[ofa-general] Re: [PATCH] IB/ipath: Make a few functions static

Arthur Jones arthur.jones at qlogic.com
Tue Jul 17 14:19:18 PDT 2007


hi roland, this patch looks good, thanks!

arthur

On Mon, Jul 16, 2007 at 10:49:12AM -0700, Roland Dreier wrote:
> Make some functions that are only used in a single .c file static.  In
> addition to being a cleanup, this shrinks the generated code.  On x86_64:
> 
> add/remove: 1/3 grow/shrink: 2/1 up/down: 4777/-4956 (-179)
> function                                     old     new   delta
> handle_errors                                  -    3994   +3994
> __verbs_timer                                 42     710    +668
> ipath_do_ruc_send                           2131    2246    +115
> ipath_no_bufs_available                      136       -    -136
> ipath_disarm_senderrbufs                     639       -    -639
> ipath_ib_timer                               658       -    -658
> ipath_intr                                  5878    2355   -3523
> 
> Signed-off-by: Roland Dreier <rolandd at cisco.com>
> ---
> Does this look OK to merge for 2.6.23?
> 
> diff --git a/drivers/infiniband/hw/ipath/ipath_driver.c b/drivers/infiniband/hw/ipath/ipath_driver.c
> index 9361f5a..09c5fd8 100644
> --- a/drivers/infiniband/hw/ipath/ipath_driver.c
> +++ b/drivers/infiniband/hw/ipath/ipath_driver.c
> @@ -1889,7 +1889,7 @@ void ipath_write_kreg_port(const struct ipath_devdata *dd, ipath_kreg regno,
>  /* Below is "non-zero" to force override, but both actual LEDs are off */
>  #define LED_OVER_BOTH_OFF (8)
>  
> -void ipath_run_led_override(unsigned long opaque)
> +static void ipath_run_led_override(unsigned long opaque)
>  {
>  	struct ipath_devdata *dd = (struct ipath_devdata *)opaque;
>  	int timeoff;
> diff --git a/drivers/infiniband/hw/ipath/ipath_eeprom.c b/drivers/infiniband/hw/ipath/ipath_eeprom.c
> index 6b91479..b4503e9 100644
> --- a/drivers/infiniband/hw/ipath/ipath_eeprom.c
> +++ b/drivers/infiniband/hw/ipath/ipath_eeprom.c
> @@ -426,8 +426,8 @@ bail:
>   * @buffer: data to write
>   * @len: number of bytes to write
>   */
> -int ipath_eeprom_internal_write(struct ipath_devdata *dd, u8 eeprom_offset,
> -				const void *buffer, int len)
> +static int ipath_eeprom_internal_write(struct ipath_devdata *dd, u8 eeprom_offset,
> +				       const void *buffer, int len)
>  {
>  	u8 single_byte;
>  	int sub_len;
> diff --git a/drivers/infiniband/hw/ipath/ipath_intr.c b/drivers/infiniband/hw/ipath/ipath_intr.c
> index 47aa434..1fd91c5 100644
> --- a/drivers/infiniband/hw/ipath/ipath_intr.c
> +++ b/drivers/infiniband/hw/ipath/ipath_intr.c
> @@ -70,7 +70,7 @@ static void ipath_clrpiobuf(struct ipath_devdata *dd, u32 pnum)
>   * If rewrite is true, and bits are set in the sendbufferror registers,
>   * we'll write to the buffer, for error recovery on parity errors.
>   */
> -void ipath_disarm_senderrbufs(struct ipath_devdata *dd, int rewrite)
> +static void ipath_disarm_senderrbufs(struct ipath_devdata *dd, int rewrite)
>  {
>  	u32 piobcnt;
>  	unsigned long sbuf[4];
> diff --git a/drivers/infiniband/hw/ipath/ipath_kernel.h b/drivers/infiniband/hw/ipath/ipath_kernel.h
> index 3105005..b6ccd04 100644
> --- a/drivers/infiniband/hw/ipath/ipath_kernel.h
> +++ b/drivers/infiniband/hw/ipath/ipath_kernel.h
> @@ -776,7 +776,6 @@ void ipath_get_eeprom_info(struct ipath_devdata *);
>  int ipath_update_eeprom_log(struct ipath_devdata *dd);
>  void ipath_inc_eeprom_err(struct ipath_devdata *dd, u32 eidx, u32 incr);
>  u64 ipath_snap_cntr(struct ipath_devdata *, ipath_creg);
> -void ipath_disarm_senderrbufs(struct ipath_devdata *, int);
>  
>  /*
>   * Set LED override, only the two LSBs have "public" meaning, but
> diff --git a/drivers/infiniband/hw/ipath/ipath_ruc.c b/drivers/infiniband/hw/ipath/ipath_ruc.c
> index 8525674..c69c252 100644
> --- a/drivers/infiniband/hw/ipath/ipath_ruc.c
> +++ b/drivers/infiniband/hw/ipath/ipath_ruc.c
> @@ -507,7 +507,7 @@ static int want_buffer(struct ipath_devdata *dd)
>   *
>   * Called when we run out of PIO buffers.
>   */
> -void ipath_no_bufs_available(struct ipath_qp *qp, struct ipath_ibdev *dev)
> +static void ipath_no_bufs_available(struct ipath_qp *qp, struct ipath_ibdev *dev)
>  {
>  	unsigned long flags;
>  
> diff --git a/drivers/infiniband/hw/ipath/ipath_verbs.c b/drivers/infiniband/hw/ipath/ipath_verbs.c
> index 65f7181..16aa61f 100644
> --- a/drivers/infiniband/hw/ipath/ipath_verbs.c
> +++ b/drivers/infiniband/hw/ipath/ipath_verbs.c
> @@ -488,7 +488,7 @@ bail:;
>   * This is called from ipath_do_rcv_timer() at interrupt level to check for
>   * QPs which need retransmits and to collect performance numbers.
>   */
> -void ipath_ib_timer(struct ipath_ibdev *dev)
> +static void ipath_ib_timer(struct ipath_ibdev *dev)
>  {
>  	struct ipath_qp *resend = NULL;
>  	struct list_head *last;
> diff --git a/drivers/infiniband/hw/ipath/ipath_verbs.h b/drivers/infiniband/hw/ipath/ipath_verbs.h
> index f3d1f2c..9bbe819 100644
> --- a/drivers/infiniband/hw/ipath/ipath_verbs.h
> +++ b/drivers/infiniband/hw/ipath/ipath_verbs.h
> @@ -782,8 +782,6 @@ void ipath_update_mmap_info(struct ipath_ibdev *dev,
>  
>  int ipath_mmap(struct ib_ucontext *context, struct vm_area_struct *vma);
>  
> -void ipath_no_bufs_available(struct ipath_qp *qp, struct ipath_ibdev *dev);
> -
>  void ipath_insert_rnr_queue(struct ipath_qp *qp);
>  
>  int ipath_get_rwqe(struct ipath_qp *qp, int wr_id_only);
> @@ -807,8 +805,6 @@ void ipath_ib_rcv(struct ipath_ibdev *, void *, void *, u32);
>  
>  int ipath_ib_piobufavail(struct ipath_ibdev *);
>  
> -void ipath_ib_timer(struct ipath_ibdev *);
> -
>  unsigned ipath_get_npkeys(struct ipath_devdata *);
>  
>  u32 ipath_get_cr_errpkey(struct ipath_devdata *);



More information about the general mailing list