All of lore.kernel.org
 help / color / mirror / Atom feed
From: johnpol@2ka.mipt.ru (Evgeniy Polyakov)
To: Adrian Bunk <bunk@stusta.de>
Cc: sensors@stimpy.netroedge.com, linux-kernel@vger.kernel.org
Subject: [2.6 patch] drivers/w1/dscore: fix the inline mess
Date: Thu, 19 May 2005 06:25:23 +0000	[thread overview]
Message-ID: <1101140551.9784.2.camel@uganda> (raw)
In-Reply-To: <20041122155223.GF19419@stusta.de>

On Mon, 2004-11-22 at 16:52 +0100, Adrian Bunk wrote:
> <--  snip  -->
> 
> ...
>   CC      drivers/w1/ds_w1_bridge.o
> drivers/w1/ds_w1_bridge.c: In function `ds9490r_touch_bit':
> drivers/w1/dscore.h:154: sorry, unimplemented: inlining failed in call 
> to 'ds_touch_bit': function body not available
> drivers/w1/ds_w1_bridge.c:37: sorry, unimplemented: called from here
> make[2]: *** [drivers/w1/ds_w1_bridge.o] Error 1
> 
> <--  snip  -->
> 
> 
> The patch below removes inline's in the following cases:
> - inline at the function prototype but not at the actual function
> - EXPORT_SYMBOL'ed inline functions

I'm ok with your changes and have applied it to my tree, thank you.

> 
> diffstat output:
>  drivers/w1/dscore.c |   40 ++++++++++++++++++++--------------------
>  drivers/w1/dscore.h |   34 +++++++++++++++++-----------------
>  2 files changed, 37 insertions(+), 37 deletions(-)
> 
> 
> Signed-off-by: Adrian Bunk <bunk@stusta.de>
> 
> --- linux-2.6.10-rc2-mm3-full/drivers/w1/dscore.h.old	2004-11-22 15:04:42.000000000 +0100
> +++ linux-2.6.10-rc2-mm3-full/drivers/w1/dscore.h	2004-11-22 15:08:14.000000000 +0100
> @@ -151,23 +151,23 @@
>  
>  };
>  
> -inline int ds_touch_bit(struct ds_device *, u8, u8 *);
> -inline int ds_read_byte(struct ds_device *, u8 *);
> -inline int ds_read_bit(struct ds_device *, u8 *);
> -inline int ds_write_byte(struct ds_device *, u8);
> -inline int ds_write_bit(struct ds_device *, u8);
> -inline int ds_start_pulse(struct ds_device *, int);
> -inline int ds_set_speed(struct ds_device *, int);
> -inline int ds_reset(struct ds_device *, struct ds_status *);
> -inline int ds_detect(struct ds_device *, struct ds_status *);
> -inline int ds_stop_pulse(struct ds_device *, int);
> -inline int ds_send_data(struct ds_device *, unsigned char *, int);
> -inline int ds_recv_data(struct ds_device *, unsigned char *, int);
> -inline int ds_recv_status(struct ds_device *, struct ds_status *);
> -inline struct ds_device * ds_get_device(void);
> -inline void ds_put_device(struct ds_device *);
> -inline int ds_write_block(struct ds_device *, u8 *, int);
> -inline int ds_read_block(struct ds_device *, u8 *, int);
> +int ds_touch_bit(struct ds_device *, u8, u8 *);
> +int ds_read_byte(struct ds_device *, u8 *);
> +int ds_read_bit(struct ds_device *, u8 *);
> +int ds_write_byte(struct ds_device *, u8);
> +int ds_write_bit(struct ds_device *, u8);
> +int ds_start_pulse(struct ds_device *, int);
> +int ds_set_speed(struct ds_device *, int);
> +int ds_reset(struct ds_device *, struct ds_status *);
> +int ds_detect(struct ds_device *, struct ds_status *);
> +int ds_stop_pulse(struct ds_device *, int);
> +int ds_send_data(struct ds_device *, unsigned char *, int);
> +int ds_recv_data(struct ds_device *, unsigned char *, int);
> +int ds_recv_status(struct ds_device *, struct ds_status *);
> +struct ds_device * ds_get_device(void);
> +void ds_put_device(struct ds_device *);
> +int ds_write_block(struct ds_device *, u8 *, int);
> +int ds_read_block(struct ds_device *, u8 *, int);
>  
>  #endif /* __DSCORE_H */
>  
> --- linux-2.6.10-rc2-mm3-full/drivers/w1/dscore.c.old	2004-11-22 15:05:19.000000000 +0100
> +++ linux-2.6.10-rc2-mm3-full/drivers/w1/dscore.c	2004-11-22 15:07:50.000000000 +0100
> @@ -35,26 +35,26 @@
>  int ds_probe(struct usb_interface *, const struct usb_device_id *);
>  void ds_disconnect(struct usb_interface *);
>  
> -inline int ds_touch_bit(struct ds_device *, u8, u8 *);
> -inline int ds_read_byte(struct ds_device *, u8 *);
> -inline int ds_read_bit(struct ds_device *, u8 *);
> -inline int ds_write_byte(struct ds_device *, u8);
> -inline int ds_write_bit(struct ds_device *, u8);
> -inline int ds_start_pulse(struct ds_device *, int);
> -inline int ds_set_speed(struct ds_device *, int);
> -inline int ds_reset(struct ds_device *, struct ds_status *);
> -inline int ds_detect(struct ds_device *, struct ds_status *);
> -inline int ds_stop_pulse(struct ds_device *, int);
> -inline int ds_send_data(struct ds_device *, unsigned char *, int);
> -inline int ds_recv_data(struct ds_device *, unsigned char *, int);
> -inline int ds_recv_status(struct ds_device *, struct ds_status *);
> -inline struct ds_device * ds_get_device(void);
> -inline void ds_put_device(struct ds_device *);
> +int ds_touch_bit(struct ds_device *, u8, u8 *);
> +int ds_read_byte(struct ds_device *, u8 *);
> +int ds_read_bit(struct ds_device *, u8 *);
> +int ds_write_byte(struct ds_device *, u8);
> +int ds_write_bit(struct ds_device *, u8);
> +int ds_start_pulse(struct ds_device *, int);
> +int ds_set_speed(struct ds_device *, int);
> +int ds_reset(struct ds_device *, struct ds_status *);
> +int ds_detect(struct ds_device *, struct ds_status *);
> +int ds_stop_pulse(struct ds_device *, int);
> +int ds_send_data(struct ds_device *, unsigned char *, int);
> +int ds_recv_data(struct ds_device *, unsigned char *, int);
> +int ds_recv_status(struct ds_device *, struct ds_status *);
> +struct ds_device * ds_get_device(void);
> +void ds_put_device(struct ds_device *);
>  
>  static inline void ds_dump_status(unsigned char *, unsigned char *, int);
> -static inline int ds_send_control(struct ds_device *, u16, u16);
> -static inline int ds_send_control_mode(struct ds_device *, u16, u16);
> -static inline int ds_send_control_cmd(struct ds_device *, u16, u16);
> +static int ds_send_control(struct ds_device *, u16, u16);
> +static int ds_send_control_mode(struct ds_device *, u16, u16);
> +static int ds_send_control_cmd(struct ds_device *, u16, u16);
>  
> 
>  static struct usb_driver ds_driver = {
> @@ -503,7 +503,7 @@
>  	return 0;
>  }
>  
> -inline int ds_read_block(struct ds_device *dev, u8 *buf, int len)
> +int ds_read_block(struct ds_device *dev, u8 *buf, int len)
>  {
>  	struct ds_status st;
>  	int err;
> @@ -529,7 +529,7 @@
>  	return err;
>  }
>  
> -inline int ds_write_block(struct ds_device *dev, u8 *buf, int len)
> +int ds_write_block(struct ds_device *dev, u8 *buf, int len)
>  {
>  	int err;
>  	struct ds_status st;
-- 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: This is a digitally signed message part
Url : http://lists.lm-sensors.org/pipermail/lm-sensors/attachments/20041122/16e22e12/attachment.bin

WARNING: multiple messages have this Message-ID (diff)
From: Evgeniy Polyakov <johnpol@2ka.mipt.ru>
To: Adrian Bunk <bunk@stusta.de>
Cc: sensors@stimpy.netroedge.com, linux-kernel@vger.kernel.org
Subject: Re: [2.6 patch] drivers/w1/dscore: fix the inline mess
Date: Mon, 22 Nov 2004 19:22:31 +0300	[thread overview]
Message-ID: <1101140551.9784.2.camel@uganda> (raw)
In-Reply-To: <20041122155223.GF19419@stusta.de>

[-- Attachment #1: Type: text/plain, Size: 6151 bytes --]

On Mon, 2004-11-22 at 16:52 +0100, Adrian Bunk wrote:
> <--  snip  -->
> 
> ...
>   CC      drivers/w1/ds_w1_bridge.o
> drivers/w1/ds_w1_bridge.c: In function `ds9490r_touch_bit':
> drivers/w1/dscore.h:154: sorry, unimplemented: inlining failed in call 
> to 'ds_touch_bit': function body not available
> drivers/w1/ds_w1_bridge.c:37: sorry, unimplemented: called from here
> make[2]: *** [drivers/w1/ds_w1_bridge.o] Error 1
> 
> <--  snip  -->
> 
> 
> The patch below removes inline's in the following cases:
> - inline at the function prototype but not at the actual function
> - EXPORT_SYMBOL'ed inline functions

I'm ok with your changes and have applied it to my tree, thank you.

> 
> diffstat output:
>  drivers/w1/dscore.c |   40 ++++++++++++++++++++--------------------
>  drivers/w1/dscore.h |   34 +++++++++++++++++-----------------
>  2 files changed, 37 insertions(+), 37 deletions(-)
> 
> 
> Signed-off-by: Adrian Bunk <bunk@stusta.de>
> 
> --- linux-2.6.10-rc2-mm3-full/drivers/w1/dscore.h.old	2004-11-22 15:04:42.000000000 +0100
> +++ linux-2.6.10-rc2-mm3-full/drivers/w1/dscore.h	2004-11-22 15:08:14.000000000 +0100
> @@ -151,23 +151,23 @@
>  
>  };
>  
> -inline int ds_touch_bit(struct ds_device *, u8, u8 *);
> -inline int ds_read_byte(struct ds_device *, u8 *);
> -inline int ds_read_bit(struct ds_device *, u8 *);
> -inline int ds_write_byte(struct ds_device *, u8);
> -inline int ds_write_bit(struct ds_device *, u8);
> -inline int ds_start_pulse(struct ds_device *, int);
> -inline int ds_set_speed(struct ds_device *, int);
> -inline int ds_reset(struct ds_device *, struct ds_status *);
> -inline int ds_detect(struct ds_device *, struct ds_status *);
> -inline int ds_stop_pulse(struct ds_device *, int);
> -inline int ds_send_data(struct ds_device *, unsigned char *, int);
> -inline int ds_recv_data(struct ds_device *, unsigned char *, int);
> -inline int ds_recv_status(struct ds_device *, struct ds_status *);
> -inline struct ds_device * ds_get_device(void);
> -inline void ds_put_device(struct ds_device *);
> -inline int ds_write_block(struct ds_device *, u8 *, int);
> -inline int ds_read_block(struct ds_device *, u8 *, int);
> +int ds_touch_bit(struct ds_device *, u8, u8 *);
> +int ds_read_byte(struct ds_device *, u8 *);
> +int ds_read_bit(struct ds_device *, u8 *);
> +int ds_write_byte(struct ds_device *, u8);
> +int ds_write_bit(struct ds_device *, u8);
> +int ds_start_pulse(struct ds_device *, int);
> +int ds_set_speed(struct ds_device *, int);
> +int ds_reset(struct ds_device *, struct ds_status *);
> +int ds_detect(struct ds_device *, struct ds_status *);
> +int ds_stop_pulse(struct ds_device *, int);
> +int ds_send_data(struct ds_device *, unsigned char *, int);
> +int ds_recv_data(struct ds_device *, unsigned char *, int);
> +int ds_recv_status(struct ds_device *, struct ds_status *);
> +struct ds_device * ds_get_device(void);
> +void ds_put_device(struct ds_device *);
> +int ds_write_block(struct ds_device *, u8 *, int);
> +int ds_read_block(struct ds_device *, u8 *, int);
>  
>  #endif /* __DSCORE_H */
>  
> --- linux-2.6.10-rc2-mm3-full/drivers/w1/dscore.c.old	2004-11-22 15:05:19.000000000 +0100
> +++ linux-2.6.10-rc2-mm3-full/drivers/w1/dscore.c	2004-11-22 15:07:50.000000000 +0100
> @@ -35,26 +35,26 @@
>  int ds_probe(struct usb_interface *, const struct usb_device_id *);
>  void ds_disconnect(struct usb_interface *);
>  
> -inline int ds_touch_bit(struct ds_device *, u8, u8 *);
> -inline int ds_read_byte(struct ds_device *, u8 *);
> -inline int ds_read_bit(struct ds_device *, u8 *);
> -inline int ds_write_byte(struct ds_device *, u8);
> -inline int ds_write_bit(struct ds_device *, u8);
> -inline int ds_start_pulse(struct ds_device *, int);
> -inline int ds_set_speed(struct ds_device *, int);
> -inline int ds_reset(struct ds_device *, struct ds_status *);
> -inline int ds_detect(struct ds_device *, struct ds_status *);
> -inline int ds_stop_pulse(struct ds_device *, int);
> -inline int ds_send_data(struct ds_device *, unsigned char *, int);
> -inline int ds_recv_data(struct ds_device *, unsigned char *, int);
> -inline int ds_recv_status(struct ds_device *, struct ds_status *);
> -inline struct ds_device * ds_get_device(void);
> -inline void ds_put_device(struct ds_device *);
> +int ds_touch_bit(struct ds_device *, u8, u8 *);
> +int ds_read_byte(struct ds_device *, u8 *);
> +int ds_read_bit(struct ds_device *, u8 *);
> +int ds_write_byte(struct ds_device *, u8);
> +int ds_write_bit(struct ds_device *, u8);
> +int ds_start_pulse(struct ds_device *, int);
> +int ds_set_speed(struct ds_device *, int);
> +int ds_reset(struct ds_device *, struct ds_status *);
> +int ds_detect(struct ds_device *, struct ds_status *);
> +int ds_stop_pulse(struct ds_device *, int);
> +int ds_send_data(struct ds_device *, unsigned char *, int);
> +int ds_recv_data(struct ds_device *, unsigned char *, int);
> +int ds_recv_status(struct ds_device *, struct ds_status *);
> +struct ds_device * ds_get_device(void);
> +void ds_put_device(struct ds_device *);
>  
>  static inline void ds_dump_status(unsigned char *, unsigned char *, int);
> -static inline int ds_send_control(struct ds_device *, u16, u16);
> -static inline int ds_send_control_mode(struct ds_device *, u16, u16);
> -static inline int ds_send_control_cmd(struct ds_device *, u16, u16);
> +static int ds_send_control(struct ds_device *, u16, u16);
> +static int ds_send_control_mode(struct ds_device *, u16, u16);
> +static int ds_send_control_cmd(struct ds_device *, u16, u16);
>  
> 
>  static struct usb_driver ds_driver = {
> @@ -503,7 +503,7 @@
>  	return 0;
>  }
>  
> -inline int ds_read_block(struct ds_device *dev, u8 *buf, int len)
> +int ds_read_block(struct ds_device *dev, u8 *buf, int len)
>  {
>  	struct ds_status st;
>  	int err;
> @@ -529,7 +529,7 @@
>  	return err;
>  }
>  
> -inline int ds_write_block(struct ds_device *dev, u8 *buf, int len)
> +int ds_write_block(struct ds_device *dev, u8 *buf, int len)
>  {
>  	int err;
>  	struct ds_status st;
-- 

[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 189 bytes --]

  reply	other threads:[~2005-05-19  6:25 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-11-22 15:52 [2.6 patch] drivers/w1/dscore: fix the inline mess Adrian Bunk
2005-05-19  6:25 ` Adrian Bunk
2004-11-22 16:22 ` Evgeniy Polyakov [this message]
2005-05-19  6:25   ` Evgeniy Polyakov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1101140551.9784.2.camel@uganda \
    --to=johnpol@2ka.mipt.ru \
    --cc=bunk@stusta.de \
    --cc=linux-kernel@vger.kernel.org \
    --cc=sensors@stimpy.netroedge.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.