13 Oct, 2007
5 commits
-
tgt uses scsi_host as I_T nexus. This works for ibmvstgt because it
creates one scsi_host for one initiator. However, other target drivers
don't work like that.This adds I_T nexus support, which enable one scsi_host to handle
multiple initiators. New scsi_tgt_it_nexus_create/destroy functions
are expected be called transport classes. For example, ibmvstgt
creates an initiator remote port, then the srp transport calls
tgt_it_nexus_create. tgt doesn't manages I_T nexus, instead it tells
tgtd, user-space daemon, to create a new I_T nexus.On the receiving the response from tgtd, tgt calls
shost->transportt->it_nexus_response. transports should notify a
lld. The srp transport uses it_nexus_response callback in
srp_function_template to do that.Signed-off-by: FUJITA Tomonori
Signed-off-by: Mike Christie
Signed-off-by: James Bottomley -
This adds a 'roles' attribute to rport like transport_fc. The role can
be initiator or target. That is, the initiator driver creates target
remote ports and the target driver creates initiator remote ports.Signed-off-by: FUJITA Tomonori
Signed-off-by: Mike Christie
Signed-off-by: James Bottomley -
This converts ib_srp to use the srp transport class.
I don't have ib hardware so I've not tested this patch.
Signed-off-by: FUJITA Tomonori
Cc: Roland Dreier
Signed-off-by: James Bottomley -
This converts ibmvscsi to use the srp transport class.
Signed-off-by: FUJITA Tomonori
Acked-by: Brian King
Signed-off-by: James Bottomley -
This adds srp transport class that works with ib_srp and ibmvscsi.
It creates only /sys/class/{srp_host,srp_remote_ports} and
srp_remote_ports has only "port_id" attribute.viola:/sys/class/srp_remote_ports/port-0:1# ls
device port_id subsystem uevent
viola:/sys/class/srp_remote_ports/port-0:1# cat port_id
4c:49:4e:55:58:20:56:49:4f:00:00:00:00:00:00:00Signed-off-by: FUJITA Tomonori
Signed-off-by: James Bottomley
16 Aug, 2007
9 commits
-
Signed-off-by: Andrew Vasquez
Signed-off-by: James Bottomley -
Signed-off-by: Andrew Vasquez
Signed-off-by: James Bottomley -
Original implementation manipulated the FC_GS values for
port-speed. Transition the codes to use the driver's own
internal representations as this makes for a reduction in
duplicate 'conversion' codes throughout the driver.Signed-off-by: Andrew Vasquez
Signed-off-by: James Bottomley -
Transitioning link-state via NOS/OLS requires a relogin to a
fabric's Management Server. Request relogin when the firmware
issues a point-to-point asynchronous event (0x8030).Signed-off-by: Andrew Vasquez
Signed-off-by: James Bottomley -
Signed-off-by: Andrew Vasquez
Signed-off-by: James Bottomley -
Signed-off-by: Andrew Vasquez
Signed-off-by: James Bottomley -
Fix the data buffer accessor patch.
For request without a data buffer nothing was written into
a SBALE.Signed-off-by: Heiko Carstens
Signed-off-by: Swen Schillig
Signed-off-by: James Bottomley -
allocate gid_pn_data objects from gid_pn_cache.
Allocate gid_pn_data objects from the corresponding cache which ensures
proper alignment.Signed-off-by: Heiko Carstens
Signed-off-by: Martin Schwidefsky
Signed-off-by: Swen Schillig
Signed-off-by: James Bottomley -
fix memory leak.
Signed-off-by: Heiko Carstens
Signed-off-by: Martin Schwidefsky
Signed-off-by: Swen Schillig
Signed-off-by: James Bottomley
15 Aug, 2007
12 commits
-
* git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-2.6-fixes:
[GFS2] Revert remounting w/o acl option leaves acls enabled
[GFS2] Fix setting of inherit jdata attr
[GFS2] Fix incorrect error path in prepare_write()
[GFS2] Fix incorrect return code in rgrp.c
[GFS2] soft lockup in rgblk_search
[GFS2] soft lockup detected in databuf_lo_before_commit
[DLM] fix basts for granted PR waiting CW
[DLM] More othercon fixes
[DLM] Fix memory leak in dlm_add_member() when dlm_node_weight() returns less than zero
[DLM] zero unused parts of sockaddr_storage
[DLM] fix NULL ls usage
[DLM] Clear othercon pointers when a connection is closed -
* 'i2c-for-linus' of git://jdelvare.pck.nerim.net/jdelvare-2.6:
i2c-s3c2410: Build fix
i2c/menelaus: Build fix
i2c-mv64xxx: Reinitialize hw and driver on I2C bus hang
i2c-mpc: Don't disable I2C module on stop condition
i2c-iop3xx: Set I2C_CLASS_HWMON to adapter class
i2c/isp1301_omap: Build fixes, whitespace
i2c-mpc: Pass correct dev_id to free_irq on error path
i2c-i801: Typo: erroneous -
Fixup the include files after the arch moves that
where included in 2.6.23.Signed-off-by: Ben Dooks
Signed-off-by: Jean Delvare -
Fix Menelaus build error, and remove needless "#define DEBUG".
Signed-off-by: David Brownell
Signed-off-by: Jean Delvare -
Under certain conditions, the mv64xxx I2C bus can hang preventing
further operation. To make the driver more robust, we now reset
the I2C hardware and the driver state machine when such hangs are
detected.Signed-off-by: Dale Farnsworth
Acked-by: Mark A. Greer
Signed-off-by: Jean Delvare -
Disabling module on stop doesn't work on some CPUs (ie. mpc8241,
as reported by Guennadi Liakhovetski), so remove that.Disable I2C module on errors/interrupts to prevent it from
locking up on mpc5200b.Signed-off-by: Domen Puncer
Acked-by: Guennadi Liakhovetski
Signed-off-by: Jean Delvare -
In order to be able to use sensors on the IOP3xx SoCs, one needs to set
the adapter class to I2C_CLASS_HWMON.Signed-off-by: Arnaud Patard
Signed-off-by: Jean Delvare -
Build fixes for isp1301_omap driver. I think an earlier version
of this must have gotten lost somewhere, or maybe it only went
into the Linux-OMAP tree.Also, some whitespace fixes to bring this more into sync with the
version of this found in the Linux-OMAP tree. (That version has
updates for the OTG controller on the OMAP 1710 which break that
functionality on OMAP 161x boards like the H2, so merging all of
it is not currently an option.)Signed-off-by: David Brownell
Signed-off-by: Jean Delvare -
Signed-off-by: Scott Wood
Signed-off-by: Jean Delvare -
Signed-off-by: Jean Delvare
-
* 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6:
[IPVS]: Use IP_VS_WAIT_WHILE when encessary.
[NET]: Share correct feature code between bridging and bonding
[ATM] drivers/atm/iphase.c: mostly kmalloc + memset conversion to kzalloc
[IRDA] irda-usb.c: mostly kmalloc + memset conversion to k[cz]alloc
[WAN] drivers/net/wan/hdlc_fr.c: kmalloc + memset conversion to kzalloc
[DCCP]: fix memory leak and clean up style - dccp_feat_empty_confirm()
[DCCP]: fix theoretical ccids_{read,write}_lock() race
[XFRM]: Clean up duplicate includes in net/xfrm/
[TIPC]: Clean up duplicate includes in net/tipc/
[SUNRPC]: Clean up duplicate includes in net/sunrpc/
[PKT_SCHED]: Clean up duplicate includes in net/sched/
[IPV6]: Clean up duplicate includes in net/ipv6/
[IPV4]: Clean up duplicate includes in net/ipv4/
[ATM]: Clean up duplicate includes in net/atm/
[ATM]: Clean up duplicate includes in drivers/atm/
[IPCONFIG]: ip_auto_config fix
[ATM]: fore200e_param_bs_queue() must be __devinit -
* 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6:
e1000: Add device IDs of new 82571 board variants
xen-netfront: Avoid deref'ing skbafter it is potentially freed.
3c59x maintainer
3c59x: fix duplex configuration
natsemi: fix netdev error acounting
ax88796 printk fixes
myri10ge: Use the pause counter to avoid a needless device reset
via-rhine: disable rx_copybreak on archs that don't allow unaligned DMA access
14 Aug, 2007
14 commits
-
This reverts commit 569a7b6c2e8965ff4908003b925757703a3d649c. The
code was correct originally. The default setting for ACLs after a
remount should be to be the same as before the remount.Signed-off-by: Abhijith Das
Signed-off-by: Steven Whitehouse -
Due to a mix up between the jdata attribute and inherit jdata attribute
it has not been possible to set the inherit jdata attribute on
directories. This is now fixed and the ioctl will report the inherit
jdata attribute for directories rather than the jdata attribute as it
did previously. This stems from our need to have the one bit in the
ioctl attr flags mean two different things according to whether the
underlying inode is a directory or not.Signed-off-by: Steven Whitehouse
-
The error path in prepare_write() was incorrect in the (very rare) event
that the transaction fails to start. The following prevents a NULL
pointer dereference,Signed-off-by: Steven Whitehouse
-
The following patch fixes a bug where 0 was being used as a return code
to indicate "nothing to do" when in fact 0 was a valid block location
which might be returned by the function.Signed-off-by: Steven Whitehouse
-
This patch seems to fix the problem described in bugzilla bug 246114.
It was written by Steve Whitehouse with some tweaking by me.The code was looping in the relatively new section of code designed to
search for and reuse unlinked inodes. In cases where it was finding an
appropriate inode to reuse, it was looping around and finding the same
block over and over because a "
Signed-off-by: Steven Whitehouse -
This is part 2 of the patch for bug #245832, part 1 of which is already
in the git tree.The problem was that sdp->sd_log_num_databuf was not always being
protected by the gfs2_log_lock spinlock, but the sd_log_le_databuf
(which it is supposed to reflect) was protected. That meant there
was a timing window during which gfs2_log_flush called
databuf_lo_before_commit and the count didn't match what was
really on the linked list in that window. So when it ran out of
items on the linked list, it decremented total_dbuf from 0 to -1 and
thus never left the "while(total_dbuf)" loop.The solution is to protect the variable sdp->sd_log_num_databuf so
that the value will always match the contents of the linked list,
and therefore the number will never go negative, and therefore, the
loop will be exited properly.Signed-off-by: Bob Peterson
Signed-off-by: Steven Whitehouse -
Fix a long standing bug where a blocking callback would be missed
when there's a granted lock in PR mode and waiting locks in both
PR and CW modes (and the PR lock was added to the waiting queue
before the CW lock). The logic simply compared the numerical values
of the modes to determine if a blocking callback was required, but in
the one case of PR and CW, the lower valued CW mode blocks the higher
valued PR mode. We just need to add a special check for this PR/CW
case in the tests that decide when a blocking callback is needed.Signed-off-by: David Teigland
Signed-off-by: Steven Whitehouse -
The last patch to clean out 'othercon' structures only fixed half the problem.
The attached addresses the other situations too, and fixes bz#238490Signed-Off-By: Patrick Caulfield
Signed-off-by: Steven Whitehouse -
There's a memory leak in fs/dlm/member.c::dlm_add_member().
If "dlm_node_weight(ls->ls_name, nodeid)" returns < 0, then
we'll return without freeing the memory allocated to the (at
that point yet unused) 'memb'.
This patch frees the allocated memory in that case and thus
avoids the leak.Signed-off-by: Jesper Juhl
Signed-off-by: David Teigland
Signed-off-by: Steven Whitehouse -
When we build a sockaddr_storage for an IP address, clear the unused parts as
they could be used for node comparisons.I have seen this occasionally make sctp connections fail.
Signed-Off-By: Patrick Caulfield
Signed-off-by: Steven Whitehouse -
Fix regression in recent patch "[DLM] variable allocation" which
attempts to dereference an "ls" struct when it's NULL.Signed-off-by: David Teigland
Signed-off-by: Steven Whitehouse -
This patch clears the othercon pointer and frees the memory when a connnection
is closed. This could cause a small memory leak when nodes leave the cluster.Signed-Off-By: Patrick Caulfield
Signed-off-by: Steven Whitehouse -
This patch adds support for 2 new board variants:
- A Quad port fiber 82571 board
- A blade version of the 82571 quad copper boardSigned-off-by: Auke Kok
Signed-off-by: Jeff Garzik -
For architectures that don't have a volatile atomic_ts constructs like
while (atomic_read(&something)); might result in endless loops since a
barrier() is missing which forces the compiler to generate code that
actually reads memory contents.
Fix this in ipvs by using the IP_VS_WAIT_WHILE macro which resolves to
while (expr) { cpu_relax(); }
(why isn't this open coded btw?)Signed-off-by: Heiko Carstens
Signed-off-by: Simon Horman
Signed-off-by: David S. Miller