[PATCH] cxl: Fix error handling

Subsystems: char and misc drivers, the rest

STALE3586d

10 messages, 7 authors, 2016-11-22 · open the first message on its own page

[PATCH] cxl: Fix error handling

From: Christophe JAILLET <hidden>
Date: 2016-10-30 21:40:58

'cxl_dev_context_init()' returns an error pointer in case of error, not
NULL. So test it with IS_ERR.

Signed-off-by: Christophe JAILLET <redacted>
---
un-compiled because I don't have the required  cross build environment.
---
 drivers/misc/cxl/pci.c | 2 +-
 drivers/misc/cxl/phb.c | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/misc/cxl/pci.c b/drivers/misc/cxl/pci.c
index e96be9ca4e60..80a87ab25b83 100644
--- a/drivers/misc/cxl/pci.c
+++ b/drivers/misc/cxl/pci.c
@@ -1921,7 +1921,7 @@ static pci_ers_result_t cxl_pci_slot_reset(struct pci_dev *pdev)
 				goto err;
 
 			ctx = cxl_dev_context_init(afu_dev);
-			if (!ctx)
+			if (IS_ERR(ctx))
 				goto err;
 
 			afu_dev->dev.archdata.cxl_ctx = ctx;
diff --git a/drivers/misc/cxl/phb.c b/drivers/misc/cxl/phb.c
index 0935d44c1770..6ec69ada19f4 100644
--- a/drivers/misc/cxl/phb.c
+++ b/drivers/misc/cxl/phb.c
@@ -20,7 +20,7 @@ bool _cxl_pci_associate_default_context(struct pci_dev *dev, struct cxl_afu *afu
 	 * in the virtual phb, we'll need a default context to attach them to.
 	 */
 	ctx = cxl_dev_context_init(dev);
-	if (!ctx)
+	if (IS_ERR(ctx))
 		return false;
 	dev->dev.archdata.cxl_ctx = ctx;
 
-- 
2.9.3

Re: [PATCH] cxl: Fix error handling

From: Michael Ellerman <mpe@ellerman.id.au>
Date: 2016-10-31 05:37:52

Christophe JAILLET [off-list ref] writes:
'cxl_dev_context_init()' returns an error pointer in case of error, not
NULL. So test it with IS_ERR.

Signed-off-by: Christophe JAILLET <redacted>
---
un-compiled because I don't have the required  cross build environment.
Do you run Ubuntu or Fedora? If so it's just a dnf/apt-get away:

$ sudo dnf install gcc-c++-powerpc64-linux-gnu binutils-powerpc64-linux-gnu gcc-powerpc64-linux-gnu
or
$ sudo apt-get install gcc-powerpc64le-linux-gnu gcc-powerpc-linux-gnu libc-dev-powerpc-cross libc-dev-ppc64el-cross

More here:

https://github.com/linuxppc/linux/wiki/Building-powerpc-kernels


cheers

Re: [PATCH] cxl: Fix error handling

From: Andrew Donnellan <hidden>
Date: 2016-10-31 06:28:06

On 31/10/16 08:40, Christophe JAILLET wrote:
'cxl_dev_context_init()' returns an error pointer in case of error, not
NULL. So test it with IS_ERR.

Signed-off-by: Christophe JAILLET <redacted>
Reviewed-by: Andrew Donnellan <redacted>
---
un-compiled because I don't have the required  cross build environment.
Builds for me.


-- 
Andrew Donnellan              OzLabs, ADL Canberra
andrew.donnellan@au1.ibm.com  IBM Australia Limited

Re: [PATCH] cxl: Fix error handling

From: Jim Davis <hidden>
Date: 2016-11-01 23:36:38

On Sun, Oct 30, 2016 at 10:37 PM, Michael Ellerman [off-list ref] wrote:
Christophe JAILLET [off-list ref] writes:
quoted
'cxl_dev_context_init()' returns an error pointer in case of error, not
NULL. So test it with IS_ERR.

Signed-off-by: Christophe JAILLET <redacted>
---
un-compiled because I don't have the required  cross build environment.
Do you run Ubuntu or Fedora? If so it's just a dnf/apt-get away:

$ sudo dnf install gcc-c++-powerpc64-linux-gnu binutils-powerpc64-linux-gnu gcc-powerpc64-linux-gnu
or
$ sudo apt-get install gcc-powerpc64le-linux-gnu gcc-powerpc-linux-gnu libc-dev-powerpc-cross libc-dev-ppc64el-cross

More here:

https://github.com/linuxppc/linux/wiki/Building-powerpc-kernels
Cool; the little-endian build worked fine, but

jim@krebstar:~/linux-rc$ make ARCH=powerpc
CROSS_COMPILE=powerpc64-linux-gnu- vmlinux
make: powerpc64-linux-gnu-gcc: Command not found
make: powerpc64-linux-gnu-gcc: Command not found
scripts/kconfig/conf  --silentoldconfig Kconfig
make: powerpc64-linux-gnu-gcc: Command not found

This is on Ubuntu 16.04; there's a /usr/bin/powerpc64le-linux-gnu-gcc
from installing gcc-powerpc64le-linux-gnu, and a
/usr/bin/powerpc-linux-gnu-gcc from installing gcc-powerpc-linux-gnu,
but no /usr/bin/powerpc64-linux-gnu-gcc.

-- 
Jim

Re: [PATCH] cxl: Fix error handling

From: Michael Ellerman <mpe@ellerman.id.au>
Date: 2016-11-02 11:12:55

Jim Davis [off-list ref] writes:
On Sun, Oct 30, 2016 at 10:37 PM, Michael Ellerman [off-list ref] wrote:
quoted
More here:

https://github.com/linuxppc/linux/wiki/Building-powerpc-kernels
Cool; the little-endian build worked fine, but
Yay, thanks for trying.
jim@krebstar:~/linux-rc$ make ARCH=powerpc
CROSS_COMPILE=powerpc64-linux-gnu- vmlinux
make: powerpc64-linux-gnu-gcc: Command not found
make: powerpc64-linux-gnu-gcc: Command not found
scripts/kconfig/conf  --silentoldconfig Kconfig
make: powerpc64-linux-gnu-gcc: Command not found
Ah sorry.
This is on Ubuntu 16.04; there's a /usr/bin/powerpc64le-linux-gnu-gcc
from installing gcc-powerpc64le-linux-gnu, and a
/usr/bin/powerpc-linux-gnu-gcc from installing gcc-powerpc-linux-gnu,
but no /usr/bin/powerpc64-linux-gnu-gcc.
It's the powerpc-linux-gnu-gcc one.

That is a 32 and 64-bit compiler, it's 32-bit by default, but the kernel
Makefiles will pass -m64 appropriately.

You can actually build a single compiler that builds 32/64-bit BE, and
64-bit LE, but the distros don't do that for whatever reason.

cheers

Re: [PATCH] cxl: Fix error handling

From: Frederic Barrat <hidden>
Date: 2016-11-02 16:50:54


Le 30/10/2016 à 22:40, Christophe JAILLET a écrit :
'cxl_dev_context_init()' returns an error pointer in case of error, not
NULL. So test it with IS_ERR.

Signed-off-by: Christophe JAILLET <redacted>
---

Thanks for the 3 patches!

Acked-by: Frederic Barrat <redacted>

Re: [PATCH] cxl: Fix error handling

From: Jim Davis <hidden>
Date: 2016-11-02 19:01:40

On Wed, Nov 2, 2016 at 4:12 AM, Michael Ellerman [off-list ref] wrote:
Jim Davis [off-list ref] writes:
quoted
On Sun, Oct 30, 2016 at 10:37 PM, Michael Ellerman [off-list ref] wrote:
quoted
More here:

https://github.com/linuxppc/linux/wiki/Building-powerpc-kernels
Cool; the little-endian build worked fine, but
Yay, thanks for trying.
quoted
jim@krebstar:~/linux-rc$ make ARCH=powerpc
CROSS_COMPILE=powerpc64-linux-gnu- vmlinux
make: powerpc64-linux-gnu-gcc: Command not found
make: powerpc64-linux-gnu-gcc: Command not found
scripts/kconfig/conf  --silentoldconfig Kconfig
make: powerpc64-linux-gnu-gcc: Command not found
But I cleverly tried to run the Fedora command on Ubuntu... when I run
the right command for Ubuntu, the build worked just fine.  D'oh!

Nit: make distclean missed a few files

jim@krebstar:~/linux-rc$ make distclean; git clean -fdx
  CLEAN   .
  CLEAN   drivers/tty/vt
  CLEAN   drivers/video/logo
  CLEAN   firmware
  CLEAN   kernel
  CLEAN   lib
  CLEAN   usr
  CLEAN   .tmp_versions
  CLEAN   scripts/basic
  CLEAN   scripts/dtc
  CLEAN   scripts/genksyms
  CLEAN   scripts/kconfig
  CLEAN   scripts/mod
  CLEAN   scripts
  CLEAN   include/config include/generated arch/powerpc/include/generated
  CLEAN   .config .version Module.symvers
Removing arch/powerpc/kernel/systbl_chk.i
Removing arch/powerpc/kernel/vdso32/vdso32.lds
Removing arch/powerpc/kernel/vdso32/vdso32.so
Removing arch/powerpc/kernel/vdso32/vdso32.so.dbg
Removing arch/powerpc/kernel/vdso64/vdso64.lds
Removing arch/powerpc/kernel/vdso64/vdso64.so
Removing arch/powerpc/kernel/vdso64/vdso64.so.dbg
Removing arch/powerpc/kernel/vmlinux.lds

-- 
Jim

Re: [PATCH] cxl: Fix error handling

From: Michael Ellerman <mpe@ellerman.id.au>
Date: 2016-11-03 09:55:59

Jim Davis [off-list ref] writes:
On Wed, Nov 2, 2016 at 4:12 AM, Michael Ellerman [off-list ref] wrote:
quoted
Jim Davis [off-list ref] writes:
quoted
On Sun, Oct 30, 2016 at 10:37 PM, Michael Ellerman [off-list ref] wrote:
quoted
More here:

https://github.com/linuxppc/linux/wiki/Building-powerpc-kernels
Cool; the little-endian build worked fine, but
Yay, thanks for trying.
quoted
jim@krebstar:~/linux-rc$ make ARCH=powerpc
CROSS_COMPILE=powerpc64-linux-gnu- vmlinux
make: powerpc64-linux-gnu-gcc: Command not found
make: powerpc64-linux-gnu-gcc: Command not found
scripts/kconfig/conf  --silentoldconfig Kconfig
make: powerpc64-linux-gnu-gcc: Command not found
But I cleverly tried to run the Fedora command on Ubuntu... when I run
the right command for Ubuntu, the build worked just fine.  D'oh!

Nit: make distclean missed a few files
Ah thanks. I literally never do that, but it is supposed work. Have
filed a bug for it.

cheers

Re: [PATCH] cxl: Fix error handling

From: Ian Munsie <hidden>
Date: 2016-11-16 01:56:09

Acked-by: Ian Munsie <redacted>

Re: cxl: Fix error handling

From: Michael Ellerman <hidden>
Date: 2016-11-22 00:34:23

On Sun, 2016-10-30 at 21:40:47 UTC, Christophe Jaillet wrote:
'cxl_dev_context_init()' returns an error pointer in case of error, not
NULL. So test it with IS_ERR.

Signed-off-by: Christophe JAILLET <redacted>
Reviewed-by: Andrew Donnellan <redacted>
Acked-by: Frederic Barrat <redacted>
Acked-by: Ian Munsie <redacted>
Applied to powerpc next, thanks.

https://git.kernel.org/powerpc/c/bb81733de28c99e10b61dcaff15921

cheers
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help