diff options
author | Alan Cox <alan@linux.intel.com> | 2009-06-30 17:02:00 -0400 |
---|---|---|
committer | Tony Luck <tony.luck@intel.com> | 2009-06-30 17:02:00 -0400 |
commit | 2be8412c6cef97b01dfaae71c04bf585d3d93a3b (patch) | |
tree | a94ce0565c64f79ce1b15536380fbeb55ed41b10 /arch/ia64/sn | |
parent | 5a4f13fad1ab5bd08dea78fc55321e429d83cddf (diff) |
[IA64] sprintf should not be used with same source & destination address
This happens to work at the moment but isn't a good idea so fix it the
simple way.
Resolves-bug: http://bugzilla.kernel.org/show_bug.cgi?id=13576
Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
Diffstat (limited to 'arch/ia64/sn')
-rw-r--r-- | arch/ia64/sn/kernel/io_common.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/arch/ia64/sn/kernel/io_common.c b/arch/ia64/sn/kernel/io_common.c index 76645cf6ac5..25831c47c57 100644 --- a/arch/ia64/sn/kernel/io_common.c +++ b/arch/ia64/sn/kernel/io_common.c | |||
@@ -435,7 +435,8 @@ void sn_generate_path(struct pci_bus *pci_bus, char *address) | |||
435 | bricktype = MODULE_GET_BTYPE(moduleid); | 435 | bricktype = MODULE_GET_BTYPE(moduleid); |
436 | if ((bricktype == L1_BRICKTYPE_191010) || | 436 | if ((bricktype == L1_BRICKTYPE_191010) || |
437 | (bricktype == L1_BRICKTYPE_1932)) | 437 | (bricktype == L1_BRICKTYPE_1932)) |
438 | sprintf(address, "%s^%d", address, geo_slot(geoid)); | 438 | sprintf(address + strlen(address), "^%d", |
439 | geo_slot(geoid)); | ||
439 | } | 440 | } |
440 | 441 | ||
441 | void __devinit | 442 | void __devinit |