On Tue, Jan 14, 2014 at 04:47:48PM +0200, Michael S. Tsirkin wrote: > On Tue, Jan 14, 2014 at 06:35:12AM -0800, Guenter Roeck wrote: > > On 01/14/2014 03:47 AM, Michael S. Tsirkin wrote: > > >On Mon, Jan 13, 2014 at 06:52:06PM -0800, Guenter Roeck wrote: > > >>Hi Greg, > > >> > > >>I get the following new build failure for 3.10 and 3.12. > > >>Affected are m68k:allmodconfig and sparc64:allmodconfig. > > >> > > >>drivers/net/virtio_net.c: In function 'receive_mergeable': > > >>drivers/net/virtio_net.c:330:29: warning: dereferencing 'void *' pointer [enabled by default] > > >>drivers/net/virtio_net.c:330:29: error: request for member 'virtual' in something not a structure or union > > >> > > >>Culprit is "virtio_net: fix error handling for mergeable buffers". > > >>Problem is that "page_address" is assumed to be a function, > > >>but that is not always the case, at least not in 3.10 and 3.12. > > >> > > >>Guenter > > > > > >I see. You are right, it's a macro on some architectures. > > >The following should fix this problem (on top). > > >Can you confirm please? > > > > > >- struct skb_vnet_hdr *hdr = page_address(buf); > > >- int num_buf = hdr->mhdr.num_buffers; > > >- struct page *page = buf; > > >+ struct page *page = buf; > > >+ struct skb_vnet_hdr *hdr = page_address(page); > > >+ int num_buf = hdr->mhdr.num_buffers; > > > > > >If this is confirmed to help I'll send a proper patch. > > Can you confirm? > Yes, the above patch fixes the build error on both platforms. Guenter -- To unsubscribe from this list: send the line "unsubscribe stable" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html