[SCSI] libfc, fcoe: Fix kerneldoc comments
1) Added '()' for function names in kerneldoc comments 2) Changed comment bookends from '**/' to '*/'. The comment on the the mailing list was that '**/' "is consistently unconventional. Not wrong, just odd." The Documentation/kernel-doc-nano-HOWTO.txt states that kerneldoc comment blocks should end with '**/' but most (if not all) instance I found under drivers/scsi/ were only using the '*/' so I converted to that style. 3) Removed incorrect linebreaks in kerneldoc comments where found 4) Removed a few unnecessary blank comment lines in kerneldoc comment blocks Signed-off-by: Robert Love <robert.w.love@intel.com> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
This commit is contained in:
		
							parent
							
								
									0ae4d4ae47
								
							
						
					
					
						commit
						34f42a070f
					
				| @ -33,19 +33,19 @@ static LIST_HEAD(fcoe_transports); | ||||
| static DEFINE_MUTEX(fcoe_transports_lock); | ||||
| 
 | ||||
| /**
 | ||||
|  * fcoe_transport_default - returns ptr to the default transport fcoe_sw | ||||
|  **/ | ||||
|  * fcoe_transport_default() - Returns ptr to the default transport fcoe_sw | ||||
|  */ | ||||
| struct fcoe_transport *fcoe_transport_default(void) | ||||
| { | ||||
| 	return &fcoe_sw_transport; | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fcoe_transport_to_pcidev - get the pci dev from a netdev | ||||
|  * fcoe_transport_to_pcidev() - get the pci dev from a netdev | ||||
|  * @netdev: the netdev that pci dev will be retrived from | ||||
|  * | ||||
|  * Returns: NULL or the corrsponding pci_dev | ||||
|  **/ | ||||
|  */ | ||||
| struct pci_dev *fcoe_transport_pcidev(const struct net_device *netdev) | ||||
| { | ||||
| 	if (!netdev->dev.parent) | ||||
| @ -54,16 +54,14 @@ struct pci_dev *fcoe_transport_pcidev(const struct net_device *netdev) | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fcoe_transport_device_lookup - find out netdev is managed by the | ||||
|  * transport | ||||
|  * assign a transport to a device | ||||
|  * fcoe_transport_device_lookup() - Lookup a transport | ||||
|  * @netdev: the netdev the transport to be attached to | ||||
|  * | ||||
|  * This will look for existing offload driver, if not found, it falls back to | ||||
|  * the default sw hba (fcoe_sw) as its fcoe transport. | ||||
|  * | ||||
|  * Returns: 0 for success | ||||
|  **/ | ||||
|  */ | ||||
| static struct fcoe_transport_internal *fcoe_transport_device_lookup( | ||||
| 	struct fcoe_transport *t, struct net_device *netdev) | ||||
| { | ||||
| @ -81,14 +79,14 @@ static struct fcoe_transport_internal *fcoe_transport_device_lookup( | ||||
| 	return NULL; | ||||
| } | ||||
| /**
 | ||||
|  * fcoe_transport_device_add - assign a transport to a device | ||||
|  * fcoe_transport_device_add() - Assign a transport to a device | ||||
|  * @netdev: the netdev the transport to be attached to | ||||
|  * | ||||
|  * This will look for existing offload driver, if not found, it falls back to | ||||
|  * the default sw hba (fcoe_sw) as its fcoe transport. | ||||
|  * | ||||
|  * Returns: 0 for success | ||||
|  **/ | ||||
|  */ | ||||
| static int fcoe_transport_device_add(struct fcoe_transport *t, | ||||
| 				     struct net_device *netdev) | ||||
| { | ||||
| @ -123,14 +121,14 @@ static int fcoe_transport_device_add(struct fcoe_transport *t, | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fcoe_transport_device_remove - remove a device from its transport | ||||
|  * fcoe_transport_device_remove() - Remove a device from its transport | ||||
|  * @netdev: the netdev the transport to be attached to | ||||
|  * | ||||
|  * this removes the device from the transport so the given transport will | ||||
|  * This removes the device from the transport so the given transport will | ||||
|  * not manage this device any more | ||||
|  * | ||||
|  * Returns: 0 for success | ||||
|  **/ | ||||
|  */ | ||||
| static int fcoe_transport_device_remove(struct fcoe_transport *t, | ||||
| 					struct net_device *netdev) | ||||
| { | ||||
| @ -155,13 +153,13 @@ static int fcoe_transport_device_remove(struct fcoe_transport *t, | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fcoe_transport_device_remove_all - remove all from transport devlist | ||||
|  * fcoe_transport_device_remove_all() - Remove all from transport devlist | ||||
|  * | ||||
|  * this removes the device from the transport so the given transport will | ||||
|  * This removes the device from the transport so the given transport will | ||||
|  * not manage this device any more | ||||
|  * | ||||
|  * Returns: 0 for success | ||||
|  **/ | ||||
|  */ | ||||
| static void fcoe_transport_device_remove_all(struct fcoe_transport *t) | ||||
| { | ||||
| 	struct fcoe_transport_internal *ti, *tmp; | ||||
| @ -175,16 +173,16 @@ static void fcoe_transport_device_remove_all(struct fcoe_transport *t) | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fcoe_transport_match - use the bus device match function to match the hw | ||||
|  * @t: the fcoe transport | ||||
|  * @netdev: | ||||
|  * fcoe_transport_match() - Use the bus device match function to match the hw | ||||
|  * @t: The fcoe transport to check | ||||
|  * @netdev: The netdev to match against | ||||
|  * | ||||
|  * This function is used to check if the givne transport wants to manage the | ||||
|  * This function is used to check if the given transport wants to manage the | ||||
|  * input netdev. if the transports implements the match function, it will be | ||||
|  * called, o.w. we just compare the pci vendor and device id. | ||||
|  * | ||||
|  * Returns: true for match up | ||||
|  **/ | ||||
|  */ | ||||
| static bool fcoe_transport_match(struct fcoe_transport *t, | ||||
| 				struct net_device *netdev) | ||||
| { | ||||
| @ -210,15 +208,15 @@ static bool fcoe_transport_match(struct fcoe_transport *t, | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fcoe_transport_lookup - check if the transport is already registered | ||||
|  * fcoe_transport_lookup() - Check if the transport is already registered | ||||
|  * @t: the transport to be looked up | ||||
|  * | ||||
|  * This compares the parent device (pci) vendor and device id | ||||
|  * | ||||
|  * Returns: NULL if not found | ||||
|  * | ||||
|  * TODO - return default sw transport if no other transport is found | ||||
|  **/ | ||||
|  * TODO: return default sw transport if no other transport is found | ||||
|  */ | ||||
| static struct fcoe_transport *fcoe_transport_lookup( | ||||
| 	struct net_device *netdev) | ||||
| { | ||||
| @ -239,11 +237,11 @@ static struct fcoe_transport *fcoe_transport_lookup( | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fcoe_transport_register - adds a fcoe transport to the fcoe transports list | ||||
|  * fcoe_transport_register() - Adds a fcoe transport to the fcoe transports list | ||||
|  * @t: ptr to the fcoe transport to be added | ||||
|  * | ||||
|  * Returns: 0 for success | ||||
|  **/ | ||||
|  */ | ||||
| int fcoe_transport_register(struct fcoe_transport *t) | ||||
| { | ||||
| 	struct fcoe_transport *tt; | ||||
| @ -269,11 +267,11 @@ int fcoe_transport_register(struct fcoe_transport *t) | ||||
| EXPORT_SYMBOL_GPL(fcoe_transport_register); | ||||
| 
 | ||||
| /**
 | ||||
|  * fcoe_transport_unregister - remove the tranport fro the fcoe transports list | ||||
|  * fcoe_transport_unregister() - Remove the tranport fro the fcoe transports list | ||||
|  * @t: ptr to the fcoe transport to be removed | ||||
|  * | ||||
|  * Returns: 0 for success | ||||
|  **/ | ||||
|  */ | ||||
| int fcoe_transport_unregister(struct fcoe_transport *t) | ||||
| { | ||||
| 	struct fcoe_transport *tt, *tmp; | ||||
| @ -294,8 +292,8 @@ int fcoe_transport_unregister(struct fcoe_transport *t) | ||||
| } | ||||
| EXPORT_SYMBOL_GPL(fcoe_transport_unregister); | ||||
| 
 | ||||
| /*
 | ||||
|  * fcoe_load_transport_driver - load an offload driver by alias name | ||||
| /**
 | ||||
|  * fcoe_load_transport_driver() - Load an offload driver by alias name | ||||
|  * @netdev: the target net device | ||||
|  * | ||||
|  * Requests for an offload driver module as the fcoe transport, if fails, it | ||||
| @ -307,7 +305,7 @@ EXPORT_SYMBOL_GPL(fcoe_transport_unregister); | ||||
|  * 	3. pure hw fcoe hba may not have netdev | ||||
|  * | ||||
|  * Returns: 0 for success | ||||
|  **/ | ||||
|  */ | ||||
| int fcoe_load_transport_driver(struct net_device *netdev) | ||||
| { | ||||
| 	struct pci_dev *pci; | ||||
| @ -335,14 +333,14 @@ int fcoe_load_transport_driver(struct net_device *netdev) | ||||
| EXPORT_SYMBOL_GPL(fcoe_load_transport_driver); | ||||
| 
 | ||||
| /**
 | ||||
|  * fcoe_transport_attach - load transport to fcoe | ||||
|  * fcoe_transport_attach() - Load transport to fcoe | ||||
|  * @netdev: the netdev the transport to be attached to | ||||
|  * | ||||
|  * This will look for existing offload driver, if not found, it falls back to | ||||
|  * the default sw hba (fcoe_sw) as its fcoe transport. | ||||
|  * | ||||
|  * Returns: 0 for success | ||||
|  **/ | ||||
|  */ | ||||
| int fcoe_transport_attach(struct net_device *netdev) | ||||
| { | ||||
| 	struct fcoe_transport *t; | ||||
| @ -373,11 +371,11 @@ int fcoe_transport_attach(struct net_device *netdev) | ||||
| EXPORT_SYMBOL_GPL(fcoe_transport_attach); | ||||
| 
 | ||||
| /**
 | ||||
|  * fcoe_transport_release - unload transport from fcoe | ||||
|  * fcoe_transport_release() - Unload transport from fcoe | ||||
|  * @netdev: the net device on which fcoe is to be released | ||||
|  * | ||||
|  * Returns: 0 for success | ||||
|  **/ | ||||
|  */ | ||||
| int fcoe_transport_release(struct net_device *netdev) | ||||
| { | ||||
| 	struct fcoe_transport *t; | ||||
| @ -410,12 +408,12 @@ int fcoe_transport_release(struct net_device *netdev) | ||||
| EXPORT_SYMBOL_GPL(fcoe_transport_release); | ||||
| 
 | ||||
| /**
 | ||||
|  * fcoe_transport_init - initializes fcoe transport layer | ||||
|  * fcoe_transport_init() - Initializes fcoe transport layer | ||||
|  * | ||||
|  * This prepares for the fcoe transport layer | ||||
|  * | ||||
|  * Returns: none | ||||
|  **/ | ||||
|  */ | ||||
| int __init fcoe_transport_init(void) | ||||
| { | ||||
| 	INIT_LIST_HEAD(&fcoe_transports); | ||||
| @ -424,12 +422,13 @@ int __init fcoe_transport_init(void) | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fcoe_transport_exit - cleans up the fcoe transport layer | ||||
|  * fcoe_transport_exit() - Cleans up the fcoe transport layer | ||||
|  * | ||||
|  * This cleans up the fcoe transport layer. removing any transport on the list, | ||||
|  * note that the transport destroy func is not called here. | ||||
|  * | ||||
|  * Returns: none | ||||
|  **/ | ||||
|  */ | ||||
| int __exit fcoe_transport_exit(void) | ||||
| { | ||||
| 	struct fcoe_transport *t, *tmp; | ||||
|  | ||||
| @ -104,13 +104,12 @@ static struct scsi_host_template fcoe_sw_shost_template = { | ||||
| 	.max_sectors = 0xffff, | ||||
| }; | ||||
| 
 | ||||
| /*
 | ||||
|  * fcoe_sw_lport_config - sets up the fc_lport | ||||
| /**
 | ||||
|  * fcoe_sw_lport_config() - sets up the fc_lport | ||||
|  * @lp: ptr to the fc_lport | ||||
|  * @shost: ptr to the parent scsi host | ||||
|  * | ||||
|  * Returns: 0 for success | ||||
|  * | ||||
|  */ | ||||
| static int fcoe_sw_lport_config(struct fc_lport *lp) | ||||
| { | ||||
| @ -137,16 +136,14 @@ static int fcoe_sw_lport_config(struct fc_lport *lp) | ||||
| 	return 0; | ||||
| } | ||||
| 
 | ||||
| /*
 | ||||
|  * fcoe_sw_netdev_config - sets up fcoe_softc for lport and network | ||||
|  * related properties | ||||
| /**
 | ||||
|  * fcoe_sw_netdev_config() - Set up netdev for SW FCoE | ||||
|  * @lp : ptr to the fc_lport | ||||
|  * @netdev : ptr to the associated netdevice struct | ||||
|  * | ||||
|  * Must be called after fcoe_sw_lport_config() as it will use lport mutex | ||||
|  * | ||||
|  * Returns : 0 for success | ||||
|  * | ||||
|  */ | ||||
| static int fcoe_sw_netdev_config(struct fc_lport *lp, struct net_device *netdev) | ||||
| { | ||||
| @ -224,16 +221,15 @@ static int fcoe_sw_netdev_config(struct fc_lport *lp, struct net_device *netdev) | ||||
| 	return 0; | ||||
| } | ||||
| 
 | ||||
| /*
 | ||||
|  * fcoe_sw_shost_config - sets up fc_lport->host | ||||
| /**
 | ||||
|  * fcoe_sw_shost_config() - Sets up fc_lport->host | ||||
|  * @lp : ptr to the fc_lport | ||||
|  * @shost : ptr to the associated scsi host | ||||
|  * @dev : device associated to scsi host | ||||
|  * | ||||
|  * Must be called after fcoe_sw_lport_config) and fcoe_sw_netdev_config() | ||||
|  * Must be called after fcoe_sw_lport_config() and fcoe_sw_netdev_config() | ||||
|  * | ||||
|  * Returns : 0 for success | ||||
|  * | ||||
|  */ | ||||
| static int fcoe_sw_shost_config(struct fc_lport *lp, struct Scsi_Host *shost, | ||||
| 				struct device *dev) | ||||
| @ -261,8 +257,8 @@ static int fcoe_sw_shost_config(struct fc_lport *lp, struct Scsi_Host *shost, | ||||
| 	return 0; | ||||
| } | ||||
| 
 | ||||
| /*
 | ||||
|  * fcoe_sw_em_config - allocates em for this lport | ||||
| /**
 | ||||
|  * fcoe_sw_em_config() - allocates em for this lport | ||||
|  * @lp: the port that em is to allocated for | ||||
|  * | ||||
|  * Returns : 0 on success | ||||
| @ -279,8 +275,8 @@ static inline int fcoe_sw_em_config(struct fc_lport *lp) | ||||
| 	return 0; | ||||
| } | ||||
| 
 | ||||
| /*
 | ||||
|  * fcoe_sw_destroy - FCoE software HBA tear-down function | ||||
| /**
 | ||||
|  * fcoe_sw_destroy() - FCoE software HBA tear-down function | ||||
|  * @netdev: ptr to the associated net_device | ||||
|  * | ||||
|  * Returns: 0 if link is OK for use by FCoE. | ||||
| @ -353,8 +349,8 @@ static struct libfc_function_template fcoe_sw_libfc_fcn_templ = { | ||||
| 	.frame_send = fcoe_xmit, | ||||
| }; | ||||
| 
 | ||||
| /*
 | ||||
|  * fcoe_sw_create - this function creates the fcoe interface | ||||
| /**
 | ||||
|  * fcoe_sw_create() - this function creates the fcoe interface | ||||
|  * @netdev: pointer the associated netdevice | ||||
|  * | ||||
|  * Creates fc_lport struct and scsi_host for lport, configures lport | ||||
| @ -440,8 +436,8 @@ out_host_put: | ||||
| 	return rc; | ||||
| } | ||||
| 
 | ||||
| /*
 | ||||
|  * fcoe_sw_match - the fcoe sw transport match function | ||||
| /**
 | ||||
|  * fcoe_sw_match() - The FCoE SW transport match function | ||||
|  * | ||||
|  * Returns : false always | ||||
|  */ | ||||
| @ -461,8 +457,8 @@ struct fcoe_transport fcoe_sw_transport = { | ||||
| 	.device = 0xffff, | ||||
| }; | ||||
| 
 | ||||
| /*
 | ||||
|  * fcoe_sw_init - registers fcoe_sw_transport | ||||
| /**
 | ||||
|  * fcoe_sw_init() - Registers fcoe_sw_transport | ||||
|  * | ||||
|  * Returns : 0 on success | ||||
|  */ | ||||
| @ -480,8 +476,8 @@ int __init fcoe_sw_init(void) | ||||
| 	return 0; | ||||
| } | ||||
| 
 | ||||
| /*
 | ||||
|  * fcoe_sw_exit - unregisters fcoe_sw_transport | ||||
| /**
 | ||||
|  * fcoe_sw_exit() - Unregisters fcoe_sw_transport | ||||
|  * | ||||
|  * Returns : 0 on success | ||||
|  */ | ||||
|  | ||||
| @ -91,13 +91,13 @@ static struct notifier_block fcoe_cpu_notifier = { | ||||
| }; | ||||
| 
 | ||||
| /**
 | ||||
|  * fcoe_create_percpu_data - creates the associated cpu data | ||||
|  * fcoe_create_percpu_data() - creates the associated cpu data | ||||
|  * @cpu: index for the cpu where fcoe cpu data will be created | ||||
|  * | ||||
|  * create percpu stats block, from cpu add notifier | ||||
|  * | ||||
|  * Returns: none | ||||
|  **/ | ||||
|  */ | ||||
| static void fcoe_create_percpu_data(int cpu) | ||||
| { | ||||
| 	struct fc_lport *lp; | ||||
| @ -115,13 +115,13 @@ static void fcoe_create_percpu_data(int cpu) | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fcoe_destroy_percpu_data - destroys the associated cpu data | ||||
|  * fcoe_destroy_percpu_data() - destroys the associated cpu data | ||||
|  * @cpu: index for the cpu where fcoe cpu data will destroyed | ||||
|  * | ||||
|  * destroy percpu stats block called by cpu add/remove notifier | ||||
|  * | ||||
|  * Retuns: none | ||||
|  **/ | ||||
|  */ | ||||
| static void fcoe_destroy_percpu_data(int cpu) | ||||
| { | ||||
| 	struct fc_lport *lp; | ||||
| @ -137,7 +137,7 @@ static void fcoe_destroy_percpu_data(int cpu) | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fcoe_cpu_callback - fcoe cpu hotplug event callback | ||||
|  * fcoe_cpu_callback() - fcoe cpu hotplug event callback | ||||
|  * @nfb: callback data block | ||||
|  * @action: event triggering the callback | ||||
|  * @hcpu: index for the cpu of this event | ||||
| @ -145,7 +145,7 @@ static void fcoe_destroy_percpu_data(int cpu) | ||||
|  * this creates or destroys per cpu data for fcoe | ||||
|  * | ||||
|  * Returns NOTIFY_OK always. | ||||
|  **/ | ||||
|  */ | ||||
| static int fcoe_cpu_callback(struct notifier_block *nfb, unsigned long action, | ||||
| 			     void *hcpu) | ||||
| { | ||||
| @ -166,7 +166,7 @@ static int fcoe_cpu_callback(struct notifier_block *nfb, unsigned long action, | ||||
| #endif /* CONFIG_HOTPLUG_CPU */ | ||||
| 
 | ||||
| /**
 | ||||
|  * fcoe_rcv - this is the fcoe receive function called by NET_RX_SOFTIRQ | ||||
|  * fcoe_rcv() - this is the fcoe receive function called by NET_RX_SOFTIRQ | ||||
|  * @skb: the receive skb | ||||
|  * @dev: associated net device | ||||
|  * @ptype: context | ||||
| @ -175,7 +175,7 @@ static int fcoe_cpu_callback(struct notifier_block *nfb, unsigned long action, | ||||
|  * this function will receive the packet and build fc frame and pass it up | ||||
|  * | ||||
|  * Returns: 0 for success | ||||
|  **/ | ||||
|  */ | ||||
| int fcoe_rcv(struct sk_buff *skb, struct net_device *dev, | ||||
| 	     struct packet_type *ptype, struct net_device *olddev) | ||||
| { | ||||
| @ -265,11 +265,11 @@ err2: | ||||
| EXPORT_SYMBOL_GPL(fcoe_rcv); | ||||
| 
 | ||||
| /**
 | ||||
|  * fcoe_start_io - pass to netdev to start xmit for fcoe | ||||
|  * fcoe_start_io() - pass to netdev to start xmit for fcoe | ||||
|  * @skb: the skb to be xmitted | ||||
|  * | ||||
|  * Returns: 0 for success | ||||
|  **/ | ||||
|  */ | ||||
| static inline int fcoe_start_io(struct sk_buff *skb) | ||||
| { | ||||
| 	int rc; | ||||
| @ -283,12 +283,12 @@ static inline int fcoe_start_io(struct sk_buff *skb) | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fcoe_get_paged_crc_eof - in case we need alloc a page for crc_eof | ||||
|  * fcoe_get_paged_crc_eof() - in case we need alloc a page for crc_eof | ||||
|  * @skb: the skb to be xmitted | ||||
|  * @tlen: total len | ||||
|  * | ||||
|  * Returns: 0 for success | ||||
|  **/ | ||||
|  */ | ||||
| static int fcoe_get_paged_crc_eof(struct sk_buff *skb, int tlen) | ||||
| { | ||||
| 	struct fcoe_percpu_s *fps; | ||||
| @ -326,13 +326,12 @@ static int fcoe_get_paged_crc_eof(struct sk_buff *skb, int tlen) | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fcoe_fc_crc - calculates FC CRC in this fcoe skb | ||||
|  * fcoe_fc_crc() - calculates FC CRC in this fcoe skb | ||||
|  * @fp: the fc_frame containg data to be checksummed | ||||
|  * | ||||
|  * This uses crc32() to calculate the crc for fc frame | ||||
|  * Return   : 32 bit crc | ||||
|  * | ||||
|  **/ | ||||
|  */ | ||||
| u32 fcoe_fc_crc(struct fc_frame *fp) | ||||
| { | ||||
| 	struct sk_buff *skb = fp_skb(fp); | ||||
| @ -363,13 +362,12 @@ u32 fcoe_fc_crc(struct fc_frame *fp) | ||||
| EXPORT_SYMBOL_GPL(fcoe_fc_crc); | ||||
| 
 | ||||
| /**
 | ||||
|  * fcoe_xmit - FCoE frame transmit function | ||||
|  * fcoe_xmit() - FCoE frame transmit function | ||||
|  * @lp:	the associated local port | ||||
|  * @fp: the fc_frame to be transmitted | ||||
|  * | ||||
|  * Return   : 0 for success | ||||
|  * | ||||
|  **/ | ||||
|  */ | ||||
| int fcoe_xmit(struct fc_lport *lp, struct fc_frame *fp) | ||||
| { | ||||
| 	int wlen, rc = 0; | ||||
| @ -511,12 +509,11 @@ int fcoe_xmit(struct fc_lport *lp, struct fc_frame *fp) | ||||
| } | ||||
| EXPORT_SYMBOL_GPL(fcoe_xmit); | ||||
| 
 | ||||
| /*
 | ||||
|  * fcoe_percpu_receive_thread - recv thread per cpu | ||||
| /**
 | ||||
|  * fcoe_percpu_receive_thread() - recv thread per cpu | ||||
|  * @arg: ptr to the fcoe per cpu struct | ||||
|  * | ||||
|  * Return: 0 for success | ||||
|  * | ||||
|  */ | ||||
| int fcoe_percpu_receive_thread(void *arg) | ||||
| { | ||||
| @ -658,7 +655,7 @@ int fcoe_percpu_receive_thread(void *arg) | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fcoe_recv_flogi - flogi receive function | ||||
|  * fcoe_recv_flogi() - flogi receive function | ||||
|  * @fc: associated fcoe_softc | ||||
|  * @fp: the recieved frame | ||||
|  * @sa: the source address of this flogi | ||||
| @ -667,7 +664,7 @@ int fcoe_percpu_receive_thread(void *arg) | ||||
|  * mac address for the initiator, eitehr OUI based or GW based. | ||||
|  * | ||||
|  * Returns: none | ||||
|  **/ | ||||
|  */ | ||||
| static void fcoe_recv_flogi(struct fcoe_softc *fc, struct fc_frame *fp, u8 *sa) | ||||
| { | ||||
| 	struct fc_frame_header *fh; | ||||
| @ -715,7 +712,7 @@ static void fcoe_recv_flogi(struct fcoe_softc *fc, struct fc_frame *fp, u8 *sa) | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fcoe_watchdog - fcoe timer callback | ||||
|  * fcoe_watchdog() - fcoe timer callback | ||||
|  * @vp: | ||||
|  * | ||||
|  * This checks the pending queue length for fcoe and set lport qfull | ||||
| @ -723,7 +720,7 @@ static void fcoe_recv_flogi(struct fcoe_softc *fc, struct fc_frame *fp, u8 *sa) | ||||
|  * fcoe_hostlist. | ||||
|  * | ||||
|  * Returns: 0 for success | ||||
|  **/ | ||||
|  */ | ||||
| void fcoe_watchdog(ulong vp) | ||||
| { | ||||
| 	struct fc_lport *lp; | ||||
| @ -750,7 +747,7 @@ void fcoe_watchdog(ulong vp) | ||||
| 
 | ||||
| 
 | ||||
| /**
 | ||||
|  * fcoe_check_wait_queue - put the skb into fcoe pending xmit queue | ||||
|  * fcoe_check_wait_queue() - put the skb into fcoe pending xmit queue | ||||
|  * @lp: the fc_port for this skb | ||||
|  * @skb: the associated skb to be xmitted | ||||
|  * | ||||
| @ -764,7 +761,7 @@ void fcoe_watchdog(ulong vp) | ||||
|  * by the next skb transmit. | ||||
|  * | ||||
|  * Returns: 0 for success | ||||
|  **/ | ||||
|  */ | ||||
| static int fcoe_check_wait_queue(struct fc_lport *lp) | ||||
| { | ||||
| 	int rc; | ||||
| @ -797,12 +794,12 @@ static int fcoe_check_wait_queue(struct fc_lport *lp) | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fcoe_insert_wait_queue_head - puts skb to fcoe pending queue head | ||||
|  * fcoe_insert_wait_queue_head() - puts skb to fcoe pending queue head | ||||
|  * @lp: the fc_port for this skb | ||||
|  * @skb: the associated skb to be xmitted | ||||
|  * | ||||
|  * Returns: none | ||||
|  **/ | ||||
|  */ | ||||
| static void fcoe_insert_wait_queue_head(struct fc_lport *lp, | ||||
| 					struct sk_buff *skb) | ||||
| { | ||||
| @ -815,12 +812,12 @@ static void fcoe_insert_wait_queue_head(struct fc_lport *lp, | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fcoe_insert_wait_queue - put the skb into fcoe pending queue tail | ||||
|  * fcoe_insert_wait_queue() - put the skb into fcoe pending queue tail | ||||
|  * @lp: the fc_port for this skb | ||||
|  * @skb: the associated skb to be xmitted | ||||
|  * | ||||
|  * Returns: none | ||||
|  **/ | ||||
|  */ | ||||
| static void fcoe_insert_wait_queue(struct fc_lport *lp, | ||||
| 				   struct sk_buff *skb) | ||||
| { | ||||
| @ -833,10 +830,9 @@ static void fcoe_insert_wait_queue(struct fc_lport *lp, | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fcoe_dev_setup - setup link change notification interface | ||||
|  * | ||||
|  **/ | ||||
| static void fcoe_dev_setup(void) | ||||
|  * fcoe_dev_setup() - setup link change notification interface | ||||
|  */ | ||||
| static void fcoe_dev_setup() | ||||
| { | ||||
| 	/*
 | ||||
| 	 * here setup a interface specific wd time to | ||||
| @ -846,15 +842,15 @@ static void fcoe_dev_setup(void) | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fcoe_dev_setup - cleanup link change notification interface | ||||
|  **/ | ||||
|  * fcoe_dev_setup() - cleanup link change notification interface | ||||
|  */ | ||||
| static void fcoe_dev_cleanup(void) | ||||
| { | ||||
| 	unregister_netdevice_notifier(&fcoe_notifier); | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fcoe_device_notification - netdev event notification callback | ||||
|  * fcoe_device_notification() - netdev event notification callback | ||||
|  * @notifier: context of the notification | ||||
|  * @event: type of event | ||||
|  * @ptr: fixed array for output parsed ifname | ||||
| @ -862,7 +858,7 @@ static void fcoe_dev_cleanup(void) | ||||
|  * This function is called by the ethernet driver in case of link change event | ||||
|  * | ||||
|  * Returns: 0 for success | ||||
|  **/ | ||||
|  */ | ||||
| static int fcoe_device_notification(struct notifier_block *notifier, | ||||
| 				    ulong event, void *ptr) | ||||
| { | ||||
| @ -926,12 +922,12 @@ out: | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fcoe_if_to_netdev - parse a name buffer to get netdev | ||||
|  * fcoe_if_to_netdev() - parse a name buffer to get netdev | ||||
|  * @ifname: fixed array for output parsed ifname | ||||
|  * @buffer: incoming buffer to be copied | ||||
|  * | ||||
|  * Returns: NULL or ptr to netdeive | ||||
|  **/ | ||||
|  */ | ||||
| static struct net_device *fcoe_if_to_netdev(const char *buffer) | ||||
| { | ||||
| 	char *cp; | ||||
| @ -948,11 +944,11 @@ static struct net_device *fcoe_if_to_netdev(const char *buffer) | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fcoe_netdev_to_module_owner - finds out the nic drive moddule of the netdev | ||||
|  * fcoe_netdev_to_module_owner() - finds out the nic drive moddule of the netdev | ||||
|  * @netdev: the target netdev | ||||
|  * | ||||
|  * Returns: ptr to the struct module, NULL for failure | ||||
|  **/ | ||||
|  */ | ||||
| static struct module *fcoe_netdev_to_module_owner( | ||||
| 	const struct net_device *netdev) | ||||
| { | ||||
| @ -972,12 +968,14 @@ static struct module *fcoe_netdev_to_module_owner( | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fcoe_ethdrv_get - holds the nic driver module by  try_module_get() for | ||||
|  * the corresponding netdev. | ||||
|  * fcoe_ethdrv_get() - Hold the Ethernet driver | ||||
|  * @netdev: the target netdev | ||||
|  * | ||||
|  * Holds the Ethernet driver module by try_module_get() for | ||||
|  * the corresponding netdev. | ||||
|  * | ||||
|  * Returns: 0 for succsss | ||||
|  **/ | ||||
|  */ | ||||
| static int fcoe_ethdrv_get(const struct net_device *netdev) | ||||
| { | ||||
| 	struct module *owner; | ||||
| @ -992,12 +990,14 @@ static int fcoe_ethdrv_get(const struct net_device *netdev) | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fcoe_ethdrv_get - releases the nic driver module by module_put for | ||||
|  * the corresponding netdev. | ||||
|  * fcoe_ethdrv_put() - Release the Ethernet driver | ||||
|  * @netdev: the target netdev | ||||
|  * | ||||
|  * Releases the Ethernet driver module by module_put for | ||||
|  * the corresponding netdev. | ||||
|  * | ||||
|  * Returns: 0 for succsss | ||||
|  **/ | ||||
|  */ | ||||
| static int fcoe_ethdrv_put(const struct net_device *netdev) | ||||
| { | ||||
| 	struct module *owner; | ||||
| @ -1013,12 +1013,12 @@ static int fcoe_ethdrv_put(const struct net_device *netdev) | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fcoe_destroy- handles the destroy from sysfs | ||||
|  * fcoe_destroy() - handles the destroy from sysfs | ||||
|  * @buffer: expcted to be a eth if name | ||||
|  * @kp: associated kernel param | ||||
|  * | ||||
|  * Returns: 0 for success | ||||
|  **/ | ||||
|  */ | ||||
| static int fcoe_destroy(const char *buffer, struct kernel_param *kp) | ||||
| { | ||||
| 	int rc; | ||||
| @ -1051,12 +1051,12 @@ out_nodev: | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fcoe_create - handles the create call from sysfs | ||||
|  * fcoe_create() - Handles the create call from sysfs | ||||
|  * @buffer: expcted to be a eth if name | ||||
|  * @kp: associated kernel param | ||||
|  * | ||||
|  * Returns: 0 for success | ||||
|  **/ | ||||
|  */ | ||||
| static int fcoe_create(const char *buffer, struct kernel_param *kp) | ||||
| { | ||||
| 	int rc; | ||||
| @ -1097,8 +1097,8 @@ module_param_call(destroy, fcoe_destroy, NULL, NULL, S_IWUSR); | ||||
| __MODULE_PARM_TYPE(destroy, "string"); | ||||
| MODULE_PARM_DESC(destroy, "Destroy fcoe port"); | ||||
| 
 | ||||
| /*
 | ||||
|  * fcoe_link_ok - check if link is ok for the fc_lport | ||||
| /**
 | ||||
|  * fcoe_link_ok() - Check if link is ok for the fc_lport | ||||
|  * @lp: ptr to the fc_lport | ||||
|  * | ||||
|  * Any permanently-disqualifying conditions have been previously checked. | ||||
| @ -1142,9 +1142,8 @@ int fcoe_link_ok(struct fc_lport *lp) | ||||
| } | ||||
| EXPORT_SYMBOL_GPL(fcoe_link_ok); | ||||
| 
 | ||||
| /*
 | ||||
|  * fcoe_percpu_clean - frees skb of the corresponding lport from the per | ||||
|  * cpu queue. | ||||
| /**
 | ||||
|  * fcoe_percpu_clean() - Clear the pending skbs for an lport | ||||
|  * @lp: the fc_lport | ||||
|  */ | ||||
| void fcoe_percpu_clean(struct fc_lport *lp) | ||||
| @ -1178,11 +1177,11 @@ void fcoe_percpu_clean(struct fc_lport *lp) | ||||
| EXPORT_SYMBOL_GPL(fcoe_percpu_clean); | ||||
| 
 | ||||
| /**
 | ||||
|  * fcoe_clean_pending_queue - dequeue skb and free it | ||||
|  * fcoe_clean_pending_queue() - Dequeue a skb and free it | ||||
|  * @lp: the corresponding fc_lport | ||||
|  * | ||||
|  * Returns: none | ||||
|  **/ | ||||
|  */ | ||||
| void fcoe_clean_pending_queue(struct fc_lport *lp) | ||||
| { | ||||
| 	struct fcoe_softc  *fc = lport_priv(lp); | ||||
| @ -1199,12 +1198,12 @@ void fcoe_clean_pending_queue(struct fc_lport *lp) | ||||
| EXPORT_SYMBOL_GPL(fcoe_clean_pending_queue); | ||||
| 
 | ||||
| /**
 | ||||
|  * libfc_host_alloc - allocate a Scsi_Host with room for the fc_lport | ||||
|  * libfc_host_alloc() - Allocate a Scsi_Host with room for the fc_lport | ||||
|  * @sht: ptr to the scsi host templ | ||||
|  * @priv_size: size of private data after fc_lport | ||||
|  * | ||||
|  * Returns: ptr to Scsi_Host | ||||
|  * TODO - to libfc? | ||||
|  * TODO: to libfc? | ||||
|  */ | ||||
| static inline struct Scsi_Host *libfc_host_alloc( | ||||
| 	struct scsi_host_template *sht, int priv_size) | ||||
| @ -1213,7 +1212,7 @@ static inline struct Scsi_Host *libfc_host_alloc( | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fcoe_host_alloc - allocate a Scsi_Host with room for the fcoe_softc | ||||
|  * fcoe_host_alloc() - Allocate a Scsi_Host with room for the fcoe_softc | ||||
|  * @sht: ptr to the scsi host templ | ||||
|  * @priv_size: size of private data after fc_lport | ||||
|  * | ||||
| @ -1225,8 +1224,8 @@ struct Scsi_Host *fcoe_host_alloc(struct scsi_host_template *sht, int priv_size) | ||||
| } | ||||
| EXPORT_SYMBOL_GPL(fcoe_host_alloc); | ||||
| 
 | ||||
| /*
 | ||||
|  * fcoe_reset - resets the fcoe | ||||
| /**
 | ||||
|  * fcoe_reset() - Resets the fcoe | ||||
|  * @shost: shost the reset is from | ||||
|  * | ||||
|  * Returns: always 0 | ||||
| @ -1239,8 +1238,8 @@ int fcoe_reset(struct Scsi_Host *shost) | ||||
| } | ||||
| EXPORT_SYMBOL_GPL(fcoe_reset); | ||||
| 
 | ||||
| /*
 | ||||
|  * fcoe_wwn_from_mac - converts 48-bit IEEE MAC address to 64-bit FC WWN. | ||||
| /**
 | ||||
|  * fcoe_wwn_from_mac() - Converts 48-bit IEEE MAC address to 64-bit FC WWN. | ||||
|  * @mac: mac address | ||||
|  * @scheme: check port | ||||
|  * @port: port indicator for converting | ||||
| @ -1279,8 +1278,9 @@ u64 fcoe_wwn_from_mac(unsigned char mac[MAX_ADDR_LEN], | ||||
| 	return wwn; | ||||
| } | ||||
| EXPORT_SYMBOL_GPL(fcoe_wwn_from_mac); | ||||
| /*
 | ||||
|  * fcoe_hostlist_lookup_softc - find the corresponding lport by a given device | ||||
| 
 | ||||
| /**
 | ||||
|  * fcoe_hostlist_lookup_softc() - find the corresponding lport by a given device | ||||
|  * @device: this is currently ptr to net_device | ||||
|  * | ||||
|  * Returns: NULL or the located fcoe_softc | ||||
| @ -1301,8 +1301,8 @@ static struct fcoe_softc *fcoe_hostlist_lookup_softc( | ||||
| 	return NULL; | ||||
| } | ||||
| 
 | ||||
| /*
 | ||||
|  * fcoe_hostlist_lookup - find the corresponding lport by netdev | ||||
| /**
 | ||||
|  * fcoe_hostlist_lookup() - Find the corresponding lport by netdev | ||||
|  * @netdev: ptr to net_device | ||||
|  * | ||||
|  * Returns: 0 for success | ||||
| @ -1317,8 +1317,8 @@ struct fc_lport *fcoe_hostlist_lookup(const struct net_device *netdev) | ||||
| } | ||||
| EXPORT_SYMBOL_GPL(fcoe_hostlist_lookup); | ||||
| 
 | ||||
| /*
 | ||||
|  * fcoe_hostlist_add - add a lport to lports list | ||||
| /**
 | ||||
|  * fcoe_hostlist_add() - Add a lport to lports list | ||||
|  * @lp: ptr to the fc_lport to badded | ||||
|  * | ||||
|  * Returns: 0 for success | ||||
| @ -1338,8 +1338,8 @@ int fcoe_hostlist_add(const struct fc_lport *lp) | ||||
| } | ||||
| EXPORT_SYMBOL_GPL(fcoe_hostlist_add); | ||||
| 
 | ||||
| /*
 | ||||
|  * fcoe_hostlist_remove - remove a lport from lports list | ||||
| /**
 | ||||
|  * fcoe_hostlist_remove() - remove a lport from lports list | ||||
|  * @lp: ptr to the fc_lport to badded | ||||
|  * | ||||
|  * Returns: 0 for success | ||||
| @ -1359,12 +1359,12 @@ int fcoe_hostlist_remove(const struct fc_lport *lp) | ||||
| EXPORT_SYMBOL_GPL(fcoe_hostlist_remove); | ||||
| 
 | ||||
| /**
 | ||||
|  * fcoe_libfc_config - sets up libfc related properties for lport | ||||
|  * fcoe_libfc_config() - sets up libfc related properties for lport | ||||
|  * @lp: ptr to the fc_lport | ||||
|  * @tt: libfc function template | ||||
|  * | ||||
|  * Returns : 0 for success | ||||
|  **/ | ||||
|  */ | ||||
| int fcoe_libfc_config(struct fc_lport *lp, struct libfc_function_template *tt) | ||||
| { | ||||
| 	/* Set the function pointers set by the LLDD */ | ||||
| @ -1382,14 +1382,14 @@ int fcoe_libfc_config(struct fc_lport *lp, struct libfc_function_template *tt) | ||||
| EXPORT_SYMBOL_GPL(fcoe_libfc_config); | ||||
| 
 | ||||
| /**
 | ||||
|  * fcoe_init - fcoe module loading initialization | ||||
|  * fcoe_init() - fcoe module loading initialization | ||||
|  * | ||||
|  * Initialization routine | ||||
|  * 1. Will create fc transport software structure | ||||
|  * 2. initialize the link list of port information structure | ||||
|  * | ||||
|  * Returns 0 on success, negative on failure | ||||
|  **/ | ||||
|  */ | ||||
| static int __init fcoe_init(void) | ||||
| { | ||||
| 	int cpu; | ||||
| @ -1452,10 +1452,10 @@ static int __init fcoe_init(void) | ||||
| module_init(fcoe_init); | ||||
| 
 | ||||
| /**
 | ||||
|  * fcoe_exit - fcoe module unloading cleanup | ||||
|  * fcoe_exit() - fcoe module unloading cleanup | ||||
|  * | ||||
|  * Returns 0 on success, negative on failure | ||||
|  **/ | ||||
|  */ | ||||
| static void __exit fcoe_exit(void) | ||||
| { | ||||
| 	u32 idx; | ||||
|  | ||||
| @ -64,7 +64,7 @@ static void fc_disc_single(struct fc_disc *, struct fc_disc_port *); | ||||
| static void fc_disc_restart(struct fc_disc *); | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_disc_lookup_rport - lookup a remote port by port_id | ||||
|  * fc_disc_lookup_rport() - lookup a remote port by port_id | ||||
|  * @lport: Fibre Channel host port instance | ||||
|  * @port_id: remote port port_id to match | ||||
|  */ | ||||
| @ -92,7 +92,7 @@ struct fc_rport *fc_disc_lookup_rport(const struct fc_lport *lport, | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_disc_stop_rports - delete all the remote ports associated with the lport | ||||
|  * fc_disc_stop_rports() - delete all the remote ports associated with the lport | ||||
|  * @disc: The discovery job to stop rports on | ||||
|  * | ||||
|  * Locking Note: This function expects that the lport mutex is locked before | ||||
| @ -117,7 +117,7 @@ void fc_disc_stop_rports(struct fc_disc *disc) | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_disc_rport_callback - Event handler for rport events | ||||
|  * fc_disc_rport_callback() - Event handler for rport events | ||||
|  * @lport: The lport which is receiving the event | ||||
|  * @rport: The rport which the event has occured on | ||||
|  * @event: The event that occured | ||||
| @ -151,7 +151,7 @@ static void fc_disc_rport_callback(struct fc_lport *lport, | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_disc_recv_rscn_req - Handle Registered State Change Notification (RSCN) | ||||
|  * fc_disc_recv_rscn_req() - Handle Registered State Change Notification (RSCN) | ||||
|  * @sp: Current sequence of the RSCN exchange | ||||
|  * @fp: RSCN Frame | ||||
|  * @lport: Fibre Channel host port instance | ||||
| @ -265,7 +265,7 @@ reject: | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_disc_recv_req - Handle incoming requests | ||||
|  * fc_disc_recv_req() - Handle incoming requests | ||||
|  * @sp: Current sequence of the request exchange | ||||
|  * @fp: The frame | ||||
|  * @lport: The FC local port | ||||
| @ -294,7 +294,7 @@ static void fc_disc_recv_req(struct fc_seq *sp, struct fc_frame *fp, | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_disc_restart - Restart discovery | ||||
|  * fc_disc_restart() - Restart discovery | ||||
|  * @lport: FC discovery context | ||||
|  * | ||||
|  * Locking Note: This function expects that the disc mutex | ||||
| @ -322,7 +322,7 @@ static void fc_disc_restart(struct fc_disc *disc) | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_disc_start - Fibre Channel Target discovery | ||||
|  * fc_disc_start() - Fibre Channel Target discovery | ||||
|  * @lport: FC local port | ||||
|  * | ||||
|  * Returns non-zero if discovery cannot be started. | ||||
| @ -383,7 +383,7 @@ static struct fc_rport_operations fc_disc_rport_ops = { | ||||
| }; | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_disc_new_target - Handle new target found by discovery | ||||
|  * fc_disc_new_target() - Handle new target found by discovery | ||||
|  * @lport: FC local port | ||||
|  * @rport: The previous FC remote port (NULL if new remote port) | ||||
|  * @ids: Identifiers for the new FC remote port | ||||
| @ -446,7 +446,7 @@ static int fc_disc_new_target(struct fc_disc *disc, | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_disc_del_target - Delete a target | ||||
|  * fc_disc_del_target() - Delete a target | ||||
|  * @disc: FC discovery context | ||||
|  * @rport: The remote port to be removed | ||||
|  */ | ||||
| @ -459,7 +459,7 @@ static void fc_disc_del_target(struct fc_disc *disc, struct fc_rport *rport) | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_disc_done - Discovery has been completed | ||||
|  * fc_disc_done() - Discovery has been completed | ||||
|  * @disc: FC discovery context | ||||
|  */ | ||||
| static void fc_disc_done(struct fc_disc *disc) | ||||
| @ -479,7 +479,7 @@ static void fc_disc_done(struct fc_disc *disc) | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_disc_error - Handle error on dNS request | ||||
|  * fc_disc_error() - Handle error on dNS request | ||||
|  * @disc: FC discovery context | ||||
|  * @fp: The frame pointer | ||||
|  */ | ||||
| @ -519,7 +519,7 @@ static void fc_disc_error(struct fc_disc *disc, struct fc_frame *fp) | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_disc_gpn_ft_req - Send Get Port Names by FC-4 type (GPN_FT) request | ||||
|  * fc_disc_gpn_ft_req() - Send Get Port Names by FC-4 type (GPN_FT) request | ||||
|  * @lport: FC discovery context | ||||
|  * | ||||
|  * Locking Note: This function expects that the disc_mutex is locked | ||||
| @ -553,7 +553,7 @@ err: | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_disc_gpn_ft_parse - Parse the list of IDs and names resulting from a request | ||||
|  * fc_disc_gpn_ft_parse() - Parse the list of IDs and names resulting from a request | ||||
|  * @lport: Fibre Channel host port instance | ||||
|  * @buf: GPN_FT response buffer | ||||
|  * @len: size of response buffer | ||||
| @ -658,7 +658,10 @@ static int fc_disc_gpn_ft_parse(struct fc_disc *disc, void *buf, size_t len) | ||||
| 	return error; | ||||
| } | ||||
| 
 | ||||
| /*
 | ||||
| /**
 | ||||
|  * fc_disc_timeout() - Retry handler for the disc component | ||||
|  * @work: Structure holding disc obj that needs retry discovery | ||||
|  * | ||||
|  * Handle retry of memory allocation for remote ports. | ||||
|  */ | ||||
| static void fc_disc_timeout(struct work_struct *work) | ||||
| @ -673,7 +676,7 @@ static void fc_disc_timeout(struct work_struct *work) | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_disc_gpn_ft_resp - Handle a response frame from Get Port Names (GPN_FT) | ||||
|  * fc_disc_gpn_ft_resp() - Handle a response frame from Get Port Names (GPN_FT) | ||||
|  * @sp: Current sequence of GPN_FT exchange | ||||
|  * @fp: response frame | ||||
|  * @lp_arg: Fibre Channel host port instance | ||||
| @ -712,9 +715,7 @@ static void fc_disc_gpn_ft_resp(struct fc_seq *sp, struct fc_frame *fp, | ||||
| 			       fr_len(fp)); | ||||
| 		} else if (ntohs(cp->ct_cmd) == FC_FS_ACC) { | ||||
| 
 | ||||
| 			/*
 | ||||
| 			 * Accepted.  Parse response. | ||||
| 			 */ | ||||
| 			/* Accepted, parse the response. */ | ||||
| 			buf = cp + 1; | ||||
| 			len -= sizeof(*cp); | ||||
| 		} else if (ntohs(cp->ct_cmd) == FC_FS_RJT) { | ||||
| @ -746,7 +747,7 @@ static void fc_disc_gpn_ft_resp(struct fc_seq *sp, struct fc_frame *fp, | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_disc_single - Discover the directory information for a single target | ||||
|  * fc_disc_single() - Discover the directory information for a single target | ||||
|  * @lport: FC local port | ||||
|  * @dp: The port to rediscover | ||||
|  * | ||||
| @ -782,7 +783,7 @@ out: | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_disc_stop - Stop discovery for a given lport | ||||
|  * fc_disc_stop() - Stop discovery for a given lport | ||||
|  * @lport: The lport that discovery should stop for | ||||
|  */ | ||||
| void fc_disc_stop(struct fc_lport *lport) | ||||
| @ -796,7 +797,7 @@ void fc_disc_stop(struct fc_lport *lport) | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_disc_stop_final - Stop discovery for a given lport | ||||
|  * fc_disc_stop_final() - Stop discovery for a given lport | ||||
|  * @lport: The lport that discovery should stop for | ||||
|  * | ||||
|  * This function will block until discovery has been | ||||
| @ -809,7 +810,7 @@ void fc_disc_stop_final(struct fc_lport *lport) | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_disc_init - Initialize the discovery block | ||||
|  * fc_disc_init() - Initialize the discovery block | ||||
|  * @lport: FC local port | ||||
|  */ | ||||
| int fc_disc_init(struct fc_lport *lport) | ||||
|  | ||||
| @ -161,7 +161,7 @@ static struct fc_fcp_pkt *fc_fcp_pkt_alloc(struct fc_lport *lp, gfp_t gfp) | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_fcp_pkt_release - release hold on scsi_pkt packet | ||||
|  * fc_fcp_pkt_release() - release hold on scsi_pkt packet | ||||
|  * @fsp:	fcp packet struct | ||||
|  * | ||||
|  * This is used by upper layer scsi driver. | ||||
| @ -183,8 +183,7 @@ static void fc_fcp_pkt_hold(struct fc_fcp_pkt *fsp) | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_fcp_pkt_destory - release hold on scsi_pkt packet | ||||
|  * | ||||
|  * fc_fcp_pkt_destory() - release hold on scsi_pkt packet | ||||
|  * @seq:		exchange sequence | ||||
|  * @fsp:	fcp packet struct | ||||
|  * | ||||
| @ -199,7 +198,7 @@ static void fc_fcp_pkt_destroy(struct fc_seq *seq, void *fsp) | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_fcp_lock_pkt - lock a packet and get a ref to it. | ||||
|  * fc_fcp_lock_pkt() - lock a packet and get a ref to it. | ||||
|  * @fsp:	fcp packet | ||||
|  * | ||||
|  * We should only return error if we return a command to scsi-ml before | ||||
| @ -291,9 +290,7 @@ static void fc_fcp_recv_data(struct fc_fcp_pkt *fsp, struct fc_frame *fp) | ||||
| 	buf = fc_frame_payload_get(fp, 0); | ||||
| 
 | ||||
| 	if (offset + len > fsp->data_len) { | ||||
| 		/*
 | ||||
| 		 * this should never happen | ||||
| 		 */ | ||||
| 		/* this should never happen */ | ||||
| 		if ((fr_flags(fp) & FCPHF_CRC_UNCHECKED) && | ||||
| 		    fc_frame_crc_check(fp)) | ||||
| 			goto crc_err; | ||||
| @ -387,8 +384,8 @@ crc_err: | ||||
| 		fc_fcp_complete_locked(fsp); | ||||
| } | ||||
| 
 | ||||
| /*
 | ||||
|  * fc_fcp_send_data -  Send SCSI data to target. | ||||
| /**
 | ||||
|  * fc_fcp_send_data() -  Send SCSI data to target. | ||||
|  * @fsp: ptr to fc_fcp_pkt | ||||
|  * @sp: ptr to this sequence | ||||
|  * @offset: starting offset for this data request | ||||
| @ -610,8 +607,8 @@ static void fc_fcp_abts_resp(struct fc_fcp_pkt *fsp, struct fc_frame *fp) | ||||
| 	} | ||||
| } | ||||
| 
 | ||||
| /*
 | ||||
|  * fc_fcp_reduce_can_queue - drop can_queue | ||||
| /**
 | ||||
|  * fc_fcp_reduce_can_queue() - drop can_queue | ||||
|  * @lp: lport to drop queueing for | ||||
|  * | ||||
|  * If we are getting memory allocation failures, then we may | ||||
| @ -642,9 +639,11 @@ done: | ||||
| 	spin_unlock_irqrestore(lp->host->host_lock, flags); | ||||
| } | ||||
| 
 | ||||
| /*
 | ||||
|  * exch mgr calls this routine to process scsi | ||||
|  * exchanges. | ||||
| /**
 | ||||
|  * fc_fcp_recv() - Reveive FCP frames | ||||
|  * @seq: The sequence the frame is on | ||||
|  * @fp: The FC frame | ||||
|  * @arg: The related FCP packet | ||||
|  * | ||||
|  * Return   : None | ||||
|  * Context  : called from Soft IRQ context | ||||
| @ -832,7 +831,7 @@ err: | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_fcp_complete_locked - complete processing of a fcp packet | ||||
|  * fc_fcp_complete_locked() - complete processing of a fcp packet | ||||
|  * @fsp:	fcp packet | ||||
|  * | ||||
|  * This function may sleep if a timer is pending. The packet lock must be | ||||
| @ -900,7 +899,7 @@ static void fc_fcp_cleanup_cmd(struct fc_fcp_pkt *fsp, int error) | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_fcp_cleanup_each_cmd - run fn on each active command | ||||
|  * fc_fcp_cleanup_each_cmd() - Cleanup active commads | ||||
|  * @lp:		logical port | ||||
|  * @id:		target id | ||||
|  * @lun:	lun | ||||
| @ -952,7 +951,7 @@ static void fc_fcp_abort_io(struct fc_lport *lp) | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_fcp_pkt_send - send a fcp packet to the lower level. | ||||
|  * fc_fcp_pkt_send() - send a fcp packet to the lower level. | ||||
|  * @lp:		fc lport | ||||
|  * @fsp:	fc packet. | ||||
|  * | ||||
| @ -1727,7 +1726,7 @@ out: | ||||
| EXPORT_SYMBOL(fc_queuecommand); | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_io_compl -  Handle responses for completed commands | ||||
|  * fc_io_compl() -  Handle responses for completed commands | ||||
|  * @fsp:	scsi packet | ||||
|  * | ||||
|  * Translates a error to a Linux SCSI error. | ||||
| @ -1857,7 +1856,7 @@ static void fc_io_compl(struct fc_fcp_pkt *fsp) | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_fcp_complete - complete processing of a fcp packet | ||||
|  * fc_fcp_complete() - complete processing of a fcp packet | ||||
|  * @fsp:	fcp packet | ||||
|  * | ||||
|  * This function may sleep if a fsp timer is pending. | ||||
| @ -1874,9 +1873,10 @@ void fc_fcp_complete(struct fc_fcp_pkt *fsp) | ||||
| EXPORT_SYMBOL(fc_fcp_complete); | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_eh_abort - Abort a command...from scsi host template | ||||
|  * fc_eh_abort() - Abort a command | ||||
|  * @sc_cmd:	scsi command to abort | ||||
|  * | ||||
|  * From scsi host template. | ||||
|  * send ABTS to the target device  and wait for the response | ||||
|  * sc_cmd is the pointer to the command to be aborted. | ||||
|  */ | ||||
| @ -1920,7 +1920,7 @@ release_pkt: | ||||
| EXPORT_SYMBOL(fc_eh_abort); | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_eh_device_reset: Reset a single LUN | ||||
|  * fc_eh_device_reset() Reset a single LUN | ||||
|  * @sc_cmd:	scsi command | ||||
|  * | ||||
|  * Set from scsi host template to send tm cmd to the target and wait for the | ||||
| @ -1973,7 +1973,7 @@ out: | ||||
| EXPORT_SYMBOL(fc_eh_device_reset); | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_eh_host_reset - The reset function will reset the ports on the host. | ||||
|  * fc_eh_host_reset() - The reset function will reset the ports on the host. | ||||
|  * @sc_cmd:	scsi command | ||||
|  */ | ||||
| int fc_eh_host_reset(struct scsi_cmnd *sc_cmd) | ||||
| @ -1999,7 +1999,7 @@ int fc_eh_host_reset(struct scsi_cmnd *sc_cmd) | ||||
| EXPORT_SYMBOL(fc_eh_host_reset); | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_slave_alloc - configure queue depth | ||||
|  * fc_slave_alloc() - configure queue depth | ||||
|  * @sdev:	scsi device | ||||
|  * | ||||
|  * Configures queue depth based on host's cmd_per_len. If not set | ||||
|  | ||||
| @ -139,7 +139,7 @@ static int fc_frame_drop(struct fc_lport *lport, struct fc_frame *fp) | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_lport_rport_callback - Event handler for rport events | ||||
|  * fc_lport_rport_callback() - Event handler for rport events | ||||
|  * @lport: The lport which is receiving the event | ||||
|  * @rport: The rport which the event has occured on | ||||
|  * @event: The event that occured | ||||
| @ -195,7 +195,7 @@ static void fc_lport_rport_callback(struct fc_lport *lport, | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_lport_state - Return a string which represents the lport's state | ||||
|  * fc_lport_state() - Return a string which represents the lport's state | ||||
|  * @lport: The lport whose state is to converted to a string | ||||
|  */ | ||||
| static const char *fc_lport_state(struct fc_lport *lport) | ||||
| @ -209,7 +209,7 @@ static const char *fc_lport_state(struct fc_lport *lport) | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_lport_ptp_setup - Create an rport for point-to-point mode | ||||
|  * fc_lport_ptp_setup() - Create an rport for point-to-point mode | ||||
|  * @lport: The lport to attach the ptp rport to | ||||
|  * @fid: The FID of the ptp rport | ||||
|  * @remote_wwpn: The WWPN of the ptp rport | ||||
| @ -351,7 +351,7 @@ static void fc_lport_add_fc4_type(struct fc_lport *lport, enum fc_fh_type type) | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_lport_recv_rlir_req - Handle received Registered Link Incident Report. | ||||
|  * fc_lport_recv_rlir_req() - Handle received Registered Link Incident Report. | ||||
|  * @lport: Fibre Channel local port recieving the RLIR | ||||
|  * @sp: current sequence in the RLIR exchange | ||||
|  * @fp: RLIR request frame | ||||
| @ -370,7 +370,7 @@ static void fc_lport_recv_rlir_req(struct fc_seq *sp, struct fc_frame *fp, | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_lport_recv_echo_req - Handle received ECHO request | ||||
|  * fc_lport_recv_echo_req() - Handle received ECHO request | ||||
|  * @lport: Fibre Channel local port recieving the ECHO | ||||
|  * @sp: current sequence in the ECHO exchange | ||||
|  * @fp: ECHO request frame | ||||
| @ -412,7 +412,7 @@ static void fc_lport_recv_echo_req(struct fc_seq *sp, struct fc_frame *in_fp, | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_lport_recv_echo_req - Handle received Request Node ID data request | ||||
|  * fc_lport_recv_echo_req() - Handle received Request Node ID data request | ||||
|  * @lport: Fibre Channel local port recieving the RNID | ||||
|  * @sp: current sequence in the RNID exchange | ||||
|  * @fp: RNID request frame | ||||
| @ -479,7 +479,7 @@ static void fc_lport_recv_rnid_req(struct fc_seq *sp, struct fc_frame *in_fp, | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_lport_recv_adisc_req - Handle received Address Discovery Request | ||||
|  * fc_lport_recv_adisc_req() - Handle received Address Discovery Request | ||||
|  * @lport: Fibre Channel local port recieving the ADISC | ||||
|  * @sp: current sequence in the ADISC exchange | ||||
|  * @fp: ADISC request frame | ||||
| @ -529,7 +529,7 @@ static void fc_lport_recv_adisc_req(struct fc_seq *sp, struct fc_frame *in_fp, | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_lport_recv_logo_req - Handle received fabric LOGO request | ||||
|  * fc_lport_recv_logo_req() - Handle received fabric LOGO request | ||||
|  * @lport: Fibre Channel local port recieving the LOGO | ||||
|  * @sp: current sequence in the LOGO exchange | ||||
|  * @fp: LOGO request frame | ||||
| @ -546,7 +546,7 @@ static void fc_lport_recv_logo_req(struct fc_seq *sp, struct fc_frame *fp, | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_fabric_login - Start the lport state machine | ||||
|  * fc_fabric_login() - Start the lport state machine | ||||
|  * @lport: The lport that should log into the fabric | ||||
|  * | ||||
|  * Locking Note: This function should not be called | ||||
| @ -568,7 +568,7 @@ int fc_fabric_login(struct fc_lport *lport) | ||||
| EXPORT_SYMBOL(fc_fabric_login); | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_linkup - Handler for transport linkup events | ||||
|  * fc_linkup() - Handler for transport linkup events | ||||
|  * @lport: The lport whose link is up | ||||
|  */ | ||||
| void fc_linkup(struct fc_lport *lport) | ||||
| @ -588,7 +588,7 @@ void fc_linkup(struct fc_lport *lport) | ||||
| EXPORT_SYMBOL(fc_linkup); | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_linkdown - Handler for transport linkdown events | ||||
|  * fc_linkdown() - Handler for transport linkdown events | ||||
|  * @lport: The lport whose link is down | ||||
|  */ | ||||
| void fc_linkdown(struct fc_lport *lport) | ||||
| @ -607,12 +607,12 @@ void fc_linkdown(struct fc_lport *lport) | ||||
| EXPORT_SYMBOL(fc_linkdown); | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_fabric_logoff - Logout of the fabric | ||||
|  * fc_fabric_logoff() - Logout of the fabric | ||||
|  * @lport:	      fc_lport pointer to logoff the fabric | ||||
|  * | ||||
|  * Return value: | ||||
|  *	0 for success, -1 for failure | ||||
|  **/ | ||||
|  */ | ||||
| int fc_fabric_logoff(struct fc_lport *lport) | ||||
| { | ||||
| 	lport->tt.disc_stop_final(lport); | ||||
| @ -625,7 +625,7 @@ int fc_fabric_logoff(struct fc_lport *lport) | ||||
| EXPORT_SYMBOL(fc_fabric_logoff); | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_lport_destroy - unregister a fc_lport | ||||
|  * fc_lport_destroy() - unregister a fc_lport | ||||
|  * @lport:	      fc_lport pointer to unregister | ||||
|  * | ||||
|  * Return value: | ||||
| @ -635,7 +635,7 @@ EXPORT_SYMBOL(fc_fabric_logoff); | ||||
|  * clean-up all the allocated memory | ||||
|  * and free up other system resources. | ||||
|  * | ||||
|  **/ | ||||
|  */ | ||||
| int fc_lport_destroy(struct fc_lport *lport) | ||||
| { | ||||
| 	lport->tt.frame_send = fc_frame_drop; | ||||
| @ -646,15 +646,14 @@ int fc_lport_destroy(struct fc_lport *lport) | ||||
| EXPORT_SYMBOL(fc_lport_destroy); | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_set_mfs - sets up the mfs for the corresponding fc_lport | ||||
|  * fc_set_mfs() - sets up the mfs for the corresponding fc_lport | ||||
|  * @lport: fc_lport pointer to unregister | ||||
|  * @mfs: the new mfs for fc_lport | ||||
|  * | ||||
|  * Set mfs for the given fc_lport to the new mfs. | ||||
|  * | ||||
|  * Return: 0 for success | ||||
|  * | ||||
|  **/ | ||||
|  */ | ||||
| int fc_set_mfs(struct fc_lport *lport, u32 mfs) | ||||
| { | ||||
| 	unsigned int old_mfs; | ||||
| @ -683,7 +682,7 @@ int fc_set_mfs(struct fc_lport *lport, u32 mfs) | ||||
| EXPORT_SYMBOL(fc_set_mfs); | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_lport_disc_callback - Callback for discovery events | ||||
|  * fc_lport_disc_callback() - Callback for discovery events | ||||
|  * @lport: FC local port | ||||
|  * @event: The discovery event | ||||
|  */ | ||||
| @ -708,7 +707,7 @@ void fc_lport_disc_callback(struct fc_lport *lport, enum fc_disc_event event) | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_rport_enter_ready - Enter the ready state and start discovery | ||||
|  * fc_rport_enter_ready() - Enter the ready state and start discovery | ||||
|  * @lport: Fibre Channel local port that is ready | ||||
|  * | ||||
|  * Locking Note: The lport lock is expected to be held before calling | ||||
| @ -725,7 +724,7 @@ static void fc_lport_enter_ready(struct fc_lport *lport) | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_lport_recv_flogi_req - Receive a FLOGI request | ||||
|  * fc_lport_recv_flogi_req() - Receive a FLOGI request | ||||
|  * @sp_in: The sequence the FLOGI is on | ||||
|  * @rx_fp: The frame the FLOGI is in | ||||
|  * @lport: The lport that recieved the request | ||||
| @ -815,7 +814,7 @@ out: | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_lport_recv_req - The generic lport request handler | ||||
|  * fc_lport_recv_req() - The generic lport request handler | ||||
|  * @lport: The lport that received the request | ||||
|  * @sp: The sequence the request is on | ||||
|  * @fp: The frame the request is in | ||||
| @ -911,7 +910,7 @@ static void fc_lport_recv_req(struct fc_lport *lport, struct fc_seq *sp, | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_lport_reset - Reset an lport | ||||
|  * fc_lport_reset() - Reset an lport | ||||
|  * @lport: The lport which should be reset | ||||
|  * | ||||
|  * Locking Note: This functions should not be called with the | ||||
| @ -928,7 +927,7 @@ int fc_lport_reset(struct fc_lport *lport) | ||||
| EXPORT_SYMBOL(fc_lport_reset); | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_rport_enter_reset - Reset the local port | ||||
|  * fc_rport_enter_reset() - Reset the local port | ||||
|  * @lport: Fibre Channel local port to be reset | ||||
|  * | ||||
|  * Locking Note: The lport lock is expected to be held before calling | ||||
| @ -960,7 +959,7 @@ static void fc_lport_enter_reset(struct fc_lport *lport) | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_lport_error - Handler for any errors | ||||
|  * fc_lport_error() - Handler for any errors | ||||
|  * @lport: The fc_lport object | ||||
|  * @fp: The frame pointer | ||||
|  * | ||||
| @ -1007,8 +1006,8 @@ static void fc_lport_error(struct fc_lport *lport, struct fc_frame *fp) | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_lport_rft_id_resp - Handle response to Register Fibre | ||||
|  *			  Channel Types by ID (RPN_ID) request | ||||
|  * fc_lport_rft_id_resp() - Handle response to Register Fibre | ||||
|  *			    Channel Types by ID (RPN_ID) request | ||||
|  * @sp: current sequence in RPN_ID exchange | ||||
|  * @fp: response frame | ||||
|  * @lp_arg: Fibre Channel host port instance | ||||
| @ -1059,8 +1058,8 @@ err: | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_lport_rpn_id_resp - Handle response to Register Port | ||||
|  *			  Name by ID (RPN_ID) request | ||||
|  * fc_lport_rpn_id_resp() - Handle response to Register Port | ||||
|  *			    Name by ID (RPN_ID) request | ||||
|  * @sp: current sequence in RPN_ID exchange | ||||
|  * @fp: response frame | ||||
|  * @lp_arg: Fibre Channel host port instance | ||||
| @ -1111,7 +1110,7 @@ err: | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_lport_scr_resp - Handle response to State Change Register (SCR) request | ||||
|  * fc_lport_scr_resp() - Handle response to State Change Register (SCR) request | ||||
|  * @sp: current sequence in SCR exchange | ||||
|  * @fp: response frame | ||||
|  * @lp_arg: Fibre Channel lport port instance that sent the registration request | ||||
| @ -1157,7 +1156,7 @@ err: | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_lport_enter_scr - Send a State Change Register (SCR) request | ||||
|  * fc_lport_enter_scr() - Send a State Change Register (SCR) request | ||||
|  * @lport: Fibre Channel local port to register for state changes | ||||
|  * | ||||
|  * Locking Note: The lport lock is expected to be held before calling | ||||
| @ -1184,7 +1183,7 @@ static void fc_lport_enter_scr(struct fc_lport *lport) | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_lport_enter_rft_id - Register FC4-types with the name server | ||||
|  * fc_lport_enter_rft_id() - Register FC4-types with the name server | ||||
|  * @lport: Fibre Channel local port to register | ||||
|  * | ||||
|  * Locking Note: The lport lock is expected to be held before calling | ||||
| @ -1226,7 +1225,7 @@ static void fc_lport_enter_rft_id(struct fc_lport *lport) | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_rport_enter_rft_id - Register port name with the name server | ||||
|  * fc_rport_enter_rft_id() - Register port name with the name server | ||||
|  * @lport: Fibre Channel local port to register | ||||
|  * | ||||
|  * Locking Note: The lport lock is expected to be held before calling | ||||
| @ -1259,7 +1258,7 @@ static struct fc_rport_operations fc_lport_rport_ops = { | ||||
| }; | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_rport_enter_dns - Create a rport to the name server | ||||
|  * fc_rport_enter_dns() - Create a rport to the name server | ||||
|  * @lport: Fibre Channel local port requesting a rport for the name server | ||||
|  * | ||||
|  * Locking Note: The lport lock is expected to be held before calling | ||||
| @ -1296,7 +1295,7 @@ err: | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_lport_timeout - Handler for the retry_work timer. | ||||
|  * fc_lport_timeout() - Handler for the retry_work timer. | ||||
|  * @work: The work struct of the fc_lport | ||||
|  */ | ||||
| static void fc_lport_timeout(struct work_struct *work) | ||||
| @ -1337,7 +1336,7 @@ static void fc_lport_timeout(struct work_struct *work) | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_lport_logo_resp - Handle response to LOGO request | ||||
|  * fc_lport_logo_resp() - Handle response to LOGO request | ||||
|  * @sp: current sequence in LOGO exchange | ||||
|  * @fp: response frame | ||||
|  * @lp_arg: Fibre Channel lport port instance that sent the LOGO request | ||||
| @ -1383,7 +1382,7 @@ err: | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_rport_enter_logo - Logout of the fabric | ||||
|  * fc_rport_enter_logo() - Logout of the fabric | ||||
|  * @lport: Fibre Channel local port to be logged out | ||||
|  * | ||||
|  * Locking Note: The lport lock is expected to be held before calling | ||||
| @ -1415,7 +1414,7 @@ static void fc_lport_enter_logo(struct fc_lport *lport) | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_lport_flogi_resp - Handle response to FLOGI request | ||||
|  * fc_lport_flogi_resp() - Handle response to FLOGI request | ||||
|  * @sp: current sequence in FLOGI exchange | ||||
|  * @fp: response frame | ||||
|  * @lp_arg: Fibre Channel lport port instance that sent the FLOGI request | ||||
| @ -1510,7 +1509,7 @@ err: | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_rport_enter_flogi - Send a FLOGI request to the fabric manager | ||||
|  * fc_rport_enter_flogi() - Send a FLOGI request to the fabric manager | ||||
|  * @lport: Fibre Channel local port to be logged in to the fabric | ||||
|  * | ||||
|  * Locking Note: The lport lock is expected to be held before calling | ||||
|  | ||||
| @ -146,7 +146,7 @@ struct fc_rport *fc_rport_rogue_create(struct fc_disc_port *dp) | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_rport_state - return a string for the state the rport is in | ||||
|  * fc_rport_state() - return a string for the state the rport is in | ||||
|  * @rport: The rport whose state we want to get a string for | ||||
|  */ | ||||
| static const char *fc_rport_state(struct fc_rport *rport) | ||||
| @ -161,7 +161,7 @@ static const char *fc_rport_state(struct fc_rport *rport) | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_set_rport_loss_tmo - Set the remote port loss timeout in seconds. | ||||
|  * fc_set_rport_loss_tmo() - Set the remote port loss timeout in seconds. | ||||
|  * @rport: Pointer to Fibre Channel remote port structure | ||||
|  * @timeout: timeout in seconds | ||||
|  */ | ||||
| @ -175,7 +175,7 @@ void fc_set_rport_loss_tmo(struct fc_rport *rport, u32 timeout) | ||||
| EXPORT_SYMBOL(fc_set_rport_loss_tmo); | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_plogi_get_maxframe - Get max payload from the common service parameters | ||||
|  * fc_plogi_get_maxframe() - Get max payload from the common service parameters | ||||
|  * @flp: FLOGI payload structure | ||||
|  * @maxval: upper limit, may be less than what is in the service parameters | ||||
|  */ | ||||
| @ -198,7 +198,7 @@ fc_plogi_get_maxframe(struct fc_els_flogi *flp, unsigned int maxval) | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_rport_state_enter - Change the rport's state | ||||
|  * fc_rport_state_enter() - Change the rport's state | ||||
|  * @rport: The rport whose state should change | ||||
|  * @new: The new state of the rport | ||||
|  * | ||||
| @ -292,7 +292,7 @@ static void fc_rport_work(struct work_struct *work) | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_rport_login - Start the remote port login state machine | ||||
|  * fc_rport_login() - Start the remote port login state machine | ||||
|  * @rport: Fibre Channel remote port | ||||
|  * | ||||
|  * Locking Note: Called without the rport lock held. This | ||||
| @ -315,7 +315,7 @@ int fc_rport_login(struct fc_rport *rport) | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_rport_logoff - Logoff and remove an rport | ||||
|  * fc_rport_logoff() - Logoff and remove an rport | ||||
|  * @rport: Fibre Channel remote port to be removed | ||||
|  * | ||||
|  * Locking Note: Called without the rport lock held. This | ||||
| @ -353,7 +353,7 @@ int fc_rport_logoff(struct fc_rport *rport) | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_rport_enter_ready - The rport is ready | ||||
|  * fc_rport_enter_ready() - The rport is ready | ||||
|  * @rport: Fibre Channel remote port that is ready | ||||
|  * | ||||
|  * Locking Note: The rport lock is expected to be held before calling | ||||
| @ -372,7 +372,7 @@ static void fc_rport_enter_ready(struct fc_rport *rport) | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_rport_timeout - Handler for the retry_work timer. | ||||
|  * fc_rport_timeout() - Handler for the retry_work timer. | ||||
|  * @work: The work struct of the fc_rport_libfc_priv | ||||
|  * | ||||
|  * Locking Note: Called without the rport lock held. This | ||||
| @ -411,7 +411,7 @@ static void fc_rport_timeout(struct work_struct *work) | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_rport_error - Error handler, called once retries have been exhausted | ||||
|  * fc_rport_error() - Error handler, called once retries have been exhausted | ||||
|  * @rport: The fc_rport object | ||||
|  * @fp: The frame pointer | ||||
|  * | ||||
| @ -444,7 +444,7 @@ static void fc_rport_error(struct fc_rport *rport, struct fc_frame *fp) | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_rport_error_retry - Error handler when retries are desired | ||||
|  * fc_rport_error_retry() - Error handler when retries are desired | ||||
|  * @rport: The fc_rport object | ||||
|  * @fp: The frame pointer | ||||
|  * | ||||
| @ -479,7 +479,7 @@ static void fc_rport_error_retry(struct fc_rport *rport, struct fc_frame *fp) | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_rport_plogi_recv_resp - Handle incoming ELS PLOGI response | ||||
|  * fc_rport_plogi_recv_resp() - Handle incoming ELS PLOGI response | ||||
|  * @sp: current sequence in the PLOGI exchange | ||||
|  * @fp: response frame | ||||
|  * @rp_arg: Fibre Channel remote port | ||||
| @ -554,7 +554,7 @@ err: | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_rport_enter_plogi - Send Port Login (PLOGI) request to peer | ||||
|  * fc_rport_enter_plogi() - Send Port Login (PLOGI) request to peer | ||||
|  * @rport: Fibre Channel remote port to send PLOGI to | ||||
|  * | ||||
|  * Locking Note: The rport lock is expected to be held before calling | ||||
| @ -587,7 +587,7 @@ static void fc_rport_enter_plogi(struct fc_rport *rport) | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_rport_prli_resp - Process Login (PRLI) response handler | ||||
|  * fc_rport_prli_resp() - Process Login (PRLI) response handler | ||||
|  * @sp: current sequence in the PRLI exchange | ||||
|  * @fp: response frame | ||||
|  * @rp_arg: Fibre Channel remote port | ||||
| @ -657,7 +657,7 @@ err: | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_rport_logo_resp - Logout (LOGO) response handler | ||||
|  * fc_rport_logo_resp() - Logout (LOGO) response handler | ||||
|  * @sp: current sequence in the LOGO exchange | ||||
|  * @fp: response frame | ||||
|  * @rp_arg: Fibre Channel remote port | ||||
| @ -706,7 +706,7 @@ err: | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_rport_enter_prli - Send Process Login (PRLI) request to peer | ||||
|  * fc_rport_enter_prli() - Send Process Login (PRLI) request to peer | ||||
|  * @rport: Fibre Channel remote port to send PRLI to | ||||
|  * | ||||
|  * Locking Note: The rport lock is expected to be held before calling | ||||
| @ -741,7 +741,7 @@ static void fc_rport_enter_prli(struct fc_rport *rport) | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_rport_els_rtv_resp - Request Timeout Value response handler | ||||
|  * fc_rport_els_rtv_resp() - Request Timeout Value response handler | ||||
|  * @sp: current sequence in the RTV exchange | ||||
|  * @fp: response frame | ||||
|  * @rp_arg: Fibre Channel remote port | ||||
| @ -807,7 +807,7 @@ err: | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_rport_enter_rtv - Send Request Timeout Value (RTV) request to peer | ||||
|  * fc_rport_enter_rtv() - Send Request Timeout Value (RTV) request to peer | ||||
|  * @rport: Fibre Channel remote port to send RTV to | ||||
|  * | ||||
|  * Locking Note: The rport lock is expected to be held before calling | ||||
| @ -838,7 +838,7 @@ static void fc_rport_enter_rtv(struct fc_rport *rport) | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_rport_enter_logo - Send Logout (LOGO) request to peer | ||||
|  * fc_rport_enter_logo() - Send Logout (LOGO) request to peer | ||||
|  * @rport: Fibre Channel remote port to send LOGO to | ||||
|  * | ||||
|  * Locking Note: The rport lock is expected to be held before calling | ||||
| @ -870,7 +870,7 @@ static void fc_rport_enter_logo(struct fc_rport *rport) | ||||
| 
 | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_rport_recv_req - Receive a request from a rport | ||||
|  * fc_rport_recv_req() - Receive a request from a rport | ||||
|  * @sp: current sequence in the PLOGI exchange | ||||
|  * @fp: response frame | ||||
|  * @rp_arg: Fibre Channel remote port | ||||
| @ -931,7 +931,7 @@ void fc_rport_recv_req(struct fc_seq *sp, struct fc_frame *fp, | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_rport_recv_plogi_req - Handle incoming Port Login (PLOGI) request | ||||
|  * fc_rport_recv_plogi_req() - Handle incoming Port Login (PLOGI) request | ||||
|  * @rport: Fibre Channel remote port that initiated PLOGI | ||||
|  * @sp: current sequence in the PLOGI exchange | ||||
|  * @fp: PLOGI request frame | ||||
| @ -1053,7 +1053,7 @@ static void fc_rport_recv_plogi_req(struct fc_rport *rport, | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_rport_recv_prli_req - Handle incoming Process Login (PRLI) request | ||||
|  * fc_rport_recv_prli_req() - Handle incoming Process Login (PRLI) request | ||||
|  * @rport: Fibre Channel remote port that initiated PRLI | ||||
|  * @sp: current sequence in the PRLI exchange | ||||
|  * @fp: PRLI request frame | ||||
| @ -1204,7 +1204,7 @@ static void fc_rport_recv_prli_req(struct fc_rport *rport, | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_rport_recv_prlo_req - Handle incoming Process Logout (PRLO) request | ||||
|  * fc_rport_recv_prlo_req() - Handle incoming Process Logout (PRLO) request | ||||
|  * @rport: Fibre Channel remote port that initiated PRLO | ||||
|  * @sp: current sequence in the PRLO exchange | ||||
|  * @fp: PRLO request frame | ||||
| @ -1235,7 +1235,7 @@ static void fc_rport_recv_prlo_req(struct fc_rport *rport, struct fc_seq *sp, | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  * fc_rport_recv_logo_req - Handle incoming Logout (LOGO) request | ||||
|  * fc_rport_recv_logo_req() - Handle incoming Logout (LOGO) request | ||||
|  * @rport: Fibre Channel remote port that initiated LOGO | ||||
|  * @sp: current sequence in the LOGO exchange | ||||
|  * @fp: LOGO request frame | ||||
|  | ||||
| @ -665,7 +665,7 @@ struct fc_lport { | ||||
| 	struct delayed_work	disc_work; | ||||
| }; | ||||
| 
 | ||||
| /**
 | ||||
| /*
 | ||||
|  * FC_LPORT HELPER FUNCTIONS | ||||
|  *****************************/ | ||||
| static inline void *lport_priv(const struct fc_lport *lp) | ||||
| @ -697,7 +697,7 @@ static inline void fc_lport_state_enter(struct fc_lport *lp, | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| /**
 | ||||
| /*
 | ||||
|  * LOCAL PORT LAYER | ||||
|  *****************************/ | ||||
| int fc_lport_init(struct fc_lport *lp); | ||||
| @ -747,19 +747,19 @@ int fc_lport_reset(struct fc_lport *); | ||||
| int fc_set_mfs(struct fc_lport *lp, u32 mfs); | ||||
| 
 | ||||
| 
 | ||||
| /**
 | ||||
| /*
 | ||||
|  * REMOTE PORT LAYER | ||||
|  *****************************/ | ||||
| int fc_rport_init(struct fc_lport *lp); | ||||
| void fc_rport_terminate_io(struct fc_rport *rp); | ||||
| 
 | ||||
| /**
 | ||||
| /*
 | ||||
|  * DISCOVERY LAYER | ||||
|  *****************************/ | ||||
| int fc_disc_init(struct fc_lport *lp); | ||||
| 
 | ||||
| 
 | ||||
| /**
 | ||||
| /*
 | ||||
|  * SCSI LAYER | ||||
|  *****************************/ | ||||
| /*
 | ||||
| @ -820,7 +820,7 @@ int fc_change_queue_type(struct scsi_device *sdev, int tag_type); | ||||
|  */ | ||||
| void fc_fcp_destroy(struct fc_lport *); | ||||
| 
 | ||||
| /**
 | ||||
| /*
 | ||||
|  * ELS/CT interface | ||||
|  *****************************/ | ||||
| /*
 | ||||
| @ -829,7 +829,7 @@ void fc_fcp_destroy(struct fc_lport *); | ||||
| int fc_elsct_init(struct fc_lport *lp); | ||||
| 
 | ||||
| 
 | ||||
| /**
 | ||||
| /*
 | ||||
|  * EXCHANGE MANAGER LAYER | ||||
|  *****************************/ | ||||
| /*
 | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user