]> git.michaelhowe.org Git - packages/o/openafs.git/commitdiff
Apply upstream STABLE14-osi-probe-check-result-cope-with-enoent-20090115
authorRuss Allbery <rra@debian.org>
Thu, 12 Feb 2009 18:59:01 +0000 (10:59 -0800)
committerRuss Allbery <rra@debian.org>
Thu, 12 Feb 2009 18:59:01 +0000 (10:59 -0800)
debian/changelog
src/afs/LINUX/osi_probe.c

index d1fc5db782ed3bfe5399818d5db5edbb826f7f4c..170e4db4814113e2fcd203f119e5cd23c3c88a19 100644 (file)
@@ -11,6 +11,8 @@ openafs (1.4.8.dfsg1-1) UNRELEASED; urgency=low
       truncation.
     - STABLE14-linux-i-size-20090112: further fix for truncation race.
     - STABLE14-linux-truncate-cleanup-20090113: further truncation fix.
+    - STABLE14-osi-probe-check-result-cope-with-enoent-20090115: fix for
+      syscall probing.
   * Make dynroot the default for new installations.  It works much better
     with systems that don't bring up their network until late in the boot
     process, such as wireless laptops.  (LP: #249240, #318605)
index f661e9ea3aa0668c61aac3998166b446f06a843a..91b95f6fe3a58978794fc595d2e013c92cce6c29 100644 (file)
@@ -1210,14 +1210,14 @@ static void *try_harder(probectl *P, PROBETYPE *ptr, unsigned long datalen)
     if (probe_debug & 0x0001) {                                                              \
        printk("<7>osi_probe: %s = 0x%016lx %s\n", P->symbol, (unsigned long)(x), (m)); \
     }                                                                                      \
-    if ((x)) {                                                                             \
+    if ((x) && ((int)(x)) != -ENOENT) {                                                    \
        *method = (m);                                                                     \
         final_answer = (void *)(x);                                                        \
     }                                                                                      \
 } while (0)
 #else
 #define check_result(x,m) do {  \
-    if ((x)) {                  \
+    if ((x) && ((int)(x)) != -ENOENT) { \
         *method = (m);          \
         return (void *)(x);     \
     }                           \