Just a heads up, in case you're planning to build with the may2002 code drop, and want 
to include this patch:

Here's what I get when I apply the fix for the IUCV initialization delay problem on 
top of:
linux-2.4.17.tar.gz (from kernel.org)
 + linux-2.4.17-s390-may2002.diff
 + linux-2.4.17-timer-may2002.diff
 + linux-2.4.17-s390-kerntypes-may2002.diff 
 
vmlinux0:/usr/src/linux # patch -p1 -i ../netiucv.patch                           
patching file drivers/s390/net/iucv.c                                             
Hunk #1 FAILED at 482.                                                            
Hunk #2 FAILED at 494.                                                            
Hunk #3 succeeded at 1103 (offset 151 lines).                                     
Hunk #4 succeeded at 1132 (offset 151 lines).                                     
Hunk #5 succeeded at 2134 (offset 152 lines).                                     
Hunk #6 FAILED at 2303.                                                           
Hunk #7 succeeded at 2320 with fuzz 2 (offset 152 lines).                         
3 out of 7 hunks FAILED -- saving rejects to file drivers/s390/net/iucv.c.rej     
patching file drivers/s390/net/iucv.h                                             
patching file drivers/s390/net/netiucv.c                                          
Hunk #2 succeeded at 811 (offset 1 line).                                         
vmlinux0:/usr/src/linux # 
 
Here's the .rej file:

vmlinux0:/usr/src/linux/drivers/s390/net # cat iucv.c.rej                              
              
***************                                                                        
              
*** 482,488 ****                                                                       
              
  b2f0(__u32 code, void *parm)                                                         
              
  {                                                                                    
              
    iucv_debug("iparml before b2f0 call:");                                            
              
-   iucv_dumpit(parm, sizeof(iucv_param.param));                                       
              
                                                                                       
              
    asm volatile (                                                                     
              
        "LRA   1,0(%1)\n\t"                                                            
              
--- 482,488 ----                                                                       
              
  b2f0(__u32 code, void *parm)                                                         
              
  {                                                                                    
              
    iucv_debug("iparml before b2f0 call:");                                            
              
+   iucv_dumpit(parm, sizeof(iucv_param));                                             
+              
                                                                                       
              
    asm volatile (                                                                     
              
        "LRA   1,0(%1)\n\t"                                                            
              
***************                                                                        
              
*** 494,500 ****                                                                       
              
        );                                                                             
              
                                                                                       
              
    iucv_debug("iparml after b2f0 call:");                                             
              
-   iucv_dumpit(parm, sizeof(iucv_param.param));                                       
              
                                                                                       
              
    return (unsigned long)*((__u8 *)(parm + 3));                                       
              
  }                                                                                    
              
--- 494,500 ----                                                                       
              
        );                                                                             
              
                                                                                       
              
    iucv_debug("iparml after b2f0 call:");                                             
              
+   iucv_dumpit(parm, sizeof(iucv_param));                                             
+              
                                                                                       
              
    return (unsigned long)*((__u8 *)(parm + 3));                                       
              
  }                                                                                    
              
***************                                                                        
              
*** 2281,2287 ****                                                                     
              
                                iucv_sever (int_buf->ippathid,                         
              
                                            no_listener);                              
              
                                iucv_debug("add_pathid failed, rc = %d",               
              
-                                          (int)add_pathid_result);                    
              
                        } else {                                                       
              
                                interrupt = h->interrupt_table;                        
              
                                if (interrupt->ConnectionPending) {                    
              
--- 2303,2309 ----                                                                     
              
                                iucv_sever (int_buf->ippathid,                         
              
                                            no_listener);                              
              
                                iucv_debug("add_pathid failed, rc = %d",               
              
+                                          (int)rc);                                   
+              
                        } else {                                                       
              
                                interrupt = h->interrupt_table;                        
              
                                if (interrupt->ConnectionPending) {                    
              
vmlinux0:/usr/src/linux/drivers/s390/net #  

If I apply the netiucv patch to a vanilla source tree, it applies fine, but then 
patching with linux-2.4.17-s390-may2002.diff fails.

I haven't tried it yet, but this patch *may* have been written against the "older" 
2.4.17 source tree...








Patrick A. Carroll
Senior Systems Engineer
L. L. Bean
Casco St
Freeport, ME 04033
(207) 552-2426
[EMAIL PROTECTED]

Reply via email to