Bug 65881 - errors compiling after make defconfig-alx
Summary: errors compiling after make defconfig-alx
Status: CLOSED PATCH_ALREADY_AVAILABLE
Alias: None
Product: Backports project
Classification: Unclassified
Component: Backports (show other bugs)
Hardware: i386 Linux
: P1 normal
Assignee: Backports Project Mailing List
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2013-11-26 15:57 UTC by Kenn
Modified: 2017-02-09 16:35 UTC (History)
3 users (show)

See Also:
Kernel Version: 3.0.76-0.11-default
Tree: Mainline
Regression: No


Attachments
backports: remove hex_byte_pack() (1.57 KB, patch)
2013-11-26 18:06 UTC, Hauke Mehrtens
Details | Diff
More SLES fixes (1.97 KB, patch)
2013-11-30 00:58 UTC, Hauke Mehrtens
Details | Diff

Description Kenn 2013-11-26 15:57:09 UTC
Just trying to compile the alx driver for my kernel (3.0.76-0.11-default). Ran make defconfig-alx, then make and got the following:

=======================================================================
In file included from /usr/src/linux-3.0.76-0.11/include/linux/cache.h:4,
                 from /usr/src/linux-3.0.76-0.11/include/linux/time.h:7,
                 from /root/Documents/Downloads/backports-3.13-rc1-1/backport-include/linux/time.h:3,
                 from /usr/src/linux-3.0.76-0.11/include/linux/stat.h:60,
                 from /usr/src/linux-3.0.76-0.11/include/linux/module.h:10,
                 from /root/Documents/Downloads/backports-3.13-rc1-1/backport-include/linux/module.h:3,
                 from /root/Documents/Downloads/backports-3.13-rc1-1/compat/main.c:1:
/root/Documents/Downloads/backports-3.13-rc1-1/backport-include/linux/kernel.h:35: error: redefinition of ‘hex_byte_pack’
/usr/src/linux-3.0.76-0.11/include/linux/kernel.h:402: error: previous definition of ‘hex_byte_pack’ was here
make[8]: *** [/root/Documents/Downloads/backports-3.13-rc1-1/compat/main.o] Error 1
make[7]: *** [/root/Documents/Downloads/backports-3.13-rc1-1/compat] Error 2
make[6]: *** [_module_/root/Documents/Downloads/backports-3.13-rc1-1] Error 2
make[5]: *** [sub-make] Error 2
make[4]: *** [all] Error 2
make[3]: *** [modules] Error 2
make[2]: *** [modules] Error 2
make[1]: *** [modules] Error 2
make: *** [default] Error 2
=======================================================================

My apologies is this is a newbie mistake on my part, but I couldn't find any forums with this error in it. Or perhaps it's a problem with my kernel? Recently moved from SLES 11.2 TO 11.3.
Comment 1 Hauke Mehrtens 2013-11-26 18:06:14 UTC
Created attachment 116271 [details]
backports: remove hex_byte_pack()

Please try this patch on top of the backports-3.13-rc1 release.
Comment 2 Kenn 2013-11-26 19:12:54 UTC
Just to confirm, the patch was simply to delete the lines indicated in the attachment and retry the previous steps. (I didn't find a patch to download, just the steps.)

Assuming that was the correct procedure, here is the result:

make[5]: `conf' is up to date.                                                               
#                                                                                            
# configuration written to .config                                                           
#                                                                                            
Building backport-include/backport/autoconf.h ... done.                                      
make -C ../../../linux-3.0.76-0.11 O=/usr/src/linux-3.0.76-0.11-obj/i386/default/. modules   
  CC [M]  /root/Documents/Downloads/backports-3.13-rc1-1/compat/main.o                       
  CC [M]  /root/Documents/Downloads/backports-3.13-rc1-1/compat/compat-3.1.o                 
In file included from /usr/src/linux-3.0.76-0.11/include/linux/cpufreq.h:17,                 
                 from /root/Documents/Downloads/backports-3.13-rc1-1/compat/compat-3.1.c:12: 
/root/Documents/Downloads/backports-3.13-rc1-1/backport-include/linux/device.h:42:1: warning: "module_driver" redefined                                                                                                                 
In file included from /root/Documents/Downloads/backports-3.13-rc1-1/backport-include/linux/device.h:4,             
                 from /usr/src/linux-3.0.76-0.11/include/linux/cpufreq.h:17,                                        
                 from /root/Documents/Downloads/backports-3.13-rc1-1/compat/compat-3.1.c:12:                        
/usr/src/linux-3.0.76-0.11/include/linux/device.h:980:1: warning: this is the location of the previous definition   
In file included from /usr/src/linux-3.0.76-0.11/include/linux/cpufreq.h:17,                                        
                 from /root/Documents/Downloads/backports-3.13-rc1-1/compat/compat-3.1.c:12:                        
/root/Documents/Downloads/backports-3.13-rc1-1/backport-include/linux/device.h:42:1: warning: "module_driver" redefined                                                                                                                 
In file included from /root/Documents/Downloads/backports-3.13-rc1-1/backport-include/linux/device.h:4,             
                 from /usr/src/linux-3.0.76-0.11/include/linux/cpufreq.h:17,                                        
                 from /root/Documents/Downloads/backports-3.13-rc1-1/compat/compat-3.1.c:12:                        
/usr/src/linux-3.0.76-0.11/include/linux/device.h:980:1: warning: this is the location of the previous definition   
  CC [M]  /root/Documents/Downloads/backports-3.13-rc1-1/compat/compat-3.3.o                                        
In file included from /usr/src/linux-3.0.76-0.11/include/linux/dmaengine.h:24,                                      
                 from /usr/src/linux-3.0.76-0.11/include/linux/skbuff.h:30,                                         
                 from /root/Documents/Downloads/backports-3.13-rc1-1/backport-include/linux/skbuff.h:3,             
                 from /root/Documents/Downloads/backports-3.13-rc1-1/compat/compat-3.3.c:13:                        
/root/Documents/Downloads/backports-3.13-rc1-1/backport-include/linux/device.h:42:1: warning: "module_driver" redefined                                                                                                                 
In file included from /root/Documents/Downloads/backports-3.13-rc1-1/backport-include/linux/device.h:4,             
                 from /usr/src/linux-3.0.76-0.11/include/linux/dmaengine.h:24,                                      
                 from /usr/src/linux-3.0.76-0.11/include/linux/skbuff.h:30,                                         
                 from /root/Documents/Downloads/backports-3.13-rc1-1/backport-include/linux/skbuff.h:3,             
                 from /root/Documents/Downloads/backports-3.13-rc1-1/compat/compat-3.3.c:13:                        
/usr/src/linux-3.0.76-0.11/include/linux/device.h:980:1: warning: this is the location of the previous definition   
In file included from /usr/src/linux-3.0.76-0.11/include/net/dst.h:12,                                              
                 from /root/Documents/Downloads/backports-3.13-rc1-1/backport-include/net/dst.h:3,
                 from /root/Documents/Downloads/backports-3.13-rc1-1/compat/compat-3.3.c:16:
/root/Documents/Downloads/backports-3.13-rc1-1/backport-include/linux/netdevice.h:160: error: redefinition of ‘netdev_tx_sent_queue’
/usr/src/linux-3.0.76-0.11/include/linux/netdevice.h:1972: error: previous definition of ‘netdev_tx_sent_queue’ was here
/root/Documents/Downloads/backports-3.13-rc1-1/backport-include/linux/netdevice.h:166: error: redefinition of ‘netdev_sent_queue’
/usr/src/linux-3.0.76-0.11/include/linux/netdevice.h:1976: error: previous definition of ‘netdev_sent_queue’ was here
/root/Documents/Downloads/backports-3.13-rc1-1/backport-include/linux/netdevice.h:171: error: redefinition of ‘netdev_tx_completed_queue’
/usr/src/linux-3.0.76-0.11/include/linux/netdevice.h:1982: error: previous definition of ‘netdev_tx_completed_queue’ was here
/root/Documents/Downloads/backports-3.13-rc1-1/backport-include/linux/netdevice.h:177: error: redefinition of ‘netdev_completed_queue’
/usr/src/linux-3.0.76-0.11/include/linux/netdevice.h:1987: error: previous definition of ‘netdev_completed_queue’ was here
/root/Documents/Downloads/backports-3.13-rc1-1/backport-include/linux/netdevice.h:183: error: redefinition of ‘netdev_tx_reset_queue’
/usr/src/linux-3.0.76-0.11/include/linux/netdevice.h:1992: error: previous definition of ‘netdev_tx_reset_queue’ was here
/root/Documents/Downloads/backports-3.13-rc1-1/backport-include/linux/netdevice.h:188: error: redefinition of ‘netdev_reset_queue’
/usr/src/linux-3.0.76-0.11/include/linux/netdevice.h:1996: error: previous definition of ‘netdev_reset_queue’ was here
make[8]: *** [/root/Documents/Downloads/backports-3.13-rc1-1/compat/compat-3.3.o] Error 1
make[7]: *** [/root/Documents/Downloads/backports-3.13-rc1-1/compat] Error 2
make[6]: *** [_module_/root/Documents/Downloads/backports-3.13-rc1-1] Error 2
make[5]: *** [sub-make] Error 2
make[4]: *** [all] Error 2
make[3]: *** [modules] Error 2
make[2]: *** [modules] Error 2
make[1]: *** [modules] Error 2
make: *** [default] Error 2
Comment 3 Hauke Mehrtens 2013-11-30 00:58:17 UTC
Created attachment 116841 [details]
More SLES fixes

Is it correct that you are using Suse Linux Enterprise Server?

Their kernel probably has lots of patches like the Red Hat kernel and it is not that easy to get backports running on such a kernel as nobody tried it before.

Could you try the attached patch, it will probably not work completely with that patch, but you should get a set forward.

When you click on "attachment" and then on View you get the patch.
Comment 4 Kenn 2013-12-02 14:47:28 UTC
(In reply to Hauke Mehrtens from comment #3)
> Is it correct that you are using Suse Linux Enterprise Server?

Yes.

> Their kernel probably has lots of patches like the Red Hat kernel and it is
> not that easy to get backports running on such a kernel as nobody tried it
> before.

This is the default kernel for SLES 11.3 and unfortunately is the kernel Novell uses for their production version of their current ZENworks Imaging product, for which I need an updated alx. They just recently changed kernels (happens roughly yearly), and this marks the first time I've had any major difficulty compiling an updated driver. It is true that I can open an SR with them and in time they will update the driver, but that can take weeks/months, whereas *usually* I can get it done in about half an hour.

> Could you try the attached patch, it will probably not work completely with
> that patch, but you should get a set forward.

First off, I noted that on line 167 there was no closing parenthesis, so I put one in. Hopefully that's correct.

Secondly, I got new errors, but fewer:

make[5]: `conf' is up to date.                                                   
#                                                                                
# configuration written to .config                                               
#                                                                                
Building backport-include/backport/autoconf.h ... done.                          
make -C ../../../linux-3.0.76-0.11 O=/usr/src/linux-3.0.76-0.11-obj/i386/default/. modules
  CC [M]  /root/Documents/Downloads/backports-3.13-rc1-1/compat/main.o
  CC [M]  /root/Documents/Downloads/backports-3.13-rc1-1/compat/compat-3.1.o
  CC [M]  /root/Documents/Downloads/backports-3.13-rc1-1/compat/compat-3.3.o
  CC [M]  /root/Documents/Downloads/backports-3.13-rc1-1/compat/compat-3.4.o
  CC [M]  /root/Documents/Downloads/backports-3.13-rc1-1/compat/compat-3.5.o
  CC [M]  /root/Documents/Downloads/backports-3.13-rc1-1/compat/user_namespace.o
  CC [M]  /root/Documents/Downloads/backports-3.13-rc1-1/compat/compat-3.6.o
  CC [M]  /root/Documents/Downloads/backports-3.13-rc1-1/compat/compat-3.7.o
In file included from /root/Documents/Downloads/backports-3.13-rc1-1/compat/compat-3.7.c:13:
/root/Documents/Downloads/backports-3.13-rc1-1/backport-include/linux/pci.h:103: error: redefinition of ‘pcie_capability_set_word’
/usr/src/linux-3.0.76-0.11/include/linux/pci.h:805: error: previous definition of ‘pcie_capability_set_word’ was here
/root/Documents/Downloads/backports-3.13-rc1-1/backport-include/linux/pci.h:109: error: redefinition of ‘pcie_capability_set_dword’
/usr/src/linux-3.0.76-0.11/include/linux/pci.h:811: error: previous definition of ‘pcie_capability_set_dword’ was here
/root/Documents/Downloads/backports-3.13-rc1-1/backport-include/linux/pci.h:115: error: redefinition of ‘pcie_capability_clear_word’
/usr/src/linux-3.0.76-0.11/include/linux/pci.h:817: error: previous definition of ‘pcie_capability_clear_word’ was here
/root/Documents/Downloads/backports-3.13-rc1-1/backport-include/linux/pci.h:121: error: redefinition of ‘pcie_capability_clear_dword’
/usr/src/linux-3.0.76-0.11/include/linux/pci.h:823: error: previous definition of ‘pcie_capability_clear_dword’ was here
/root/Documents/Downloads/backports-3.13-rc1-1/compat/compat-3.7.c:49: error: conflicting types for ‘pci_pcie_type’
/usr/src/linux-3.0.76-0.11/include/linux/pci.h:1576: error: previous definition of ‘pci_pcie_type’ was here
make[8]: *** [/root/Documents/Downloads/backports-3.13-rc1-1/compat/compat-3.7.o] Error 1
make[7]: *** [/root/Documents/Downloads/backports-3.13-rc1-1/compat] Error 2
make[6]: *** [_module_/root/Documents/Downloads/backports-3.13-rc1-1] Error 2
make[5]: *** [sub-make] Error 2
make[4]: *** [all] Error 2
make[3]: *** [modules] Error 2
make[2]: *** [modules] Error 2
make[1]: *** [modules] Error 2
make: *** [default] Error 2


> When you click on "attachment" and then on View you get the patch.

When I click on "attachment" I get a nice web document that has the old code on the left and the new code on the right, with changes highlighted in blue and green.

when I click on "View" I see a screen that appears to have a script in it, starting out:

diff --git a/backport-include/linux/device.h b/backport-include/linux/device.h
index e1d7bb7..198aec4 100644 ....

and so on. 

I tried copying this into a script file and executing it, but got these errors:

iff: unrecognized option '--git'                                              
diff: Try `diff --help' for more information.                                  
If 'index' is not a typo you can run the following command to lookup the package that contains the binary:
    command-not-found index                                                                               
bash: index: command not found                                                                            
If '---' is not a typo you can run the following command to lookup the package that contains the binary:  
    command-not-found ---                                                                                 
bash: ---: command not found                                                                              
If '+++' is not a typo you can run the following command to lookup the package that contains the binary:  
    command-not-found +++                                                                                 
bash: +++: command not found                                                                              
bash: patch2: line 5: syntax error near unexpected token `('                                              
bash: patch2: line 5: `@@ -29,7 +29,7 @@ backport_device_move(struct device *dev, struct device *new_parent,'
Comment 5 Hauke Mehrtens 2013-12-13 00:20:10 UTC
There are some fixes for problems with SLES 11 SP3 in the latest release, please try backports-20131206 and report your results.

https://www.kernel.org/pub/linux/kernel/projects/backports/2013/12/06/
Comment 6 Kenn 2013-12-13 16:26:44 UTC
(In reply to Hauke Mehrtens from comment #5)
> There are some fixes for problems with SLES 11 SP3 in the latest release,
> please try backports-20131206 and report your results.

Thanks! That compiled without any errors!

Unfortunately, the driver did not work for the laptop we were trying to get on the network. It's an Alienware 17 with Qualcomm LAN Killer E2201 wireless. Vendor ID 1969 Device ID E091. Unfortunately, I no longer have the device in my office, so testing any further updates requires extra steps from my colleagues.

However, I will monitor backports releases and try new ones periodically. Hopefully the NIC in the Alienware notebook will be supported soon.

Thanks again for your help!
Comment 7 Johannes Berg 2013-12-16 08:39:09 UTC
FWIW, it probably won't be supported unless somebody like you actually works on it - I upstreamed the alx driver but Qualcomm never picked up maintenance and don't seem to be even thinking about helping with the driver.
Comment 8 Kenn 2013-12-16 21:48:19 UTC
(In reply to Johannes Berg from comment #7)
> FWIW, it probably won't be supported unless somebody like you actually works
> on it

If you mean that I would need to write the driver, then I guess I'm out of luck. If you mean I would need to be available for testing, I can certainly do that.

I'll see if I can get Novell to do something. After all, the driver is used in their product.
Comment 9 xerofoify 2014-07-28 03:31:27 UTC
Is this bug still open , if not I would recommend closing it.
Cheers Nick

Note You need to log in before you can comment on or make changes to this bug.