kbuild@lists.01.org

2014-02-07 Thread Dan Carpenter
Hi David,

FYI, there are new smatch warnings show up in

tree:   git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc.git 
char-misc-next
head:   d3a8a9dbb903c73a7ec2deae4c9b7d74b6834f4c
commit: d3a8a9dbb903c73a7ec2deae4c9b7d74b6834f4c [29/29] w1: hold bus_mutex in 
netlink and search

drivers/w1/masters/ds1wm.c:339 ds1wm_search() error: double lock 
'mutex:&master_dev->bus_mutex'
drivers/w1/masters/ds1wm.c:443 ds1wm_search() error: double unlock 
'mutex:&master_dev->bus_mutex'

git remote add char-misc 
git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc.git
git remote update char-misc
git checkout d3a8a9dbb903c73a7ec2deae4c9b7d74b6834f4c
vim +339 drivers/w1/masters/ds1wm.c

26a6afb9 Jean-François Dagenais2011-05-26  333  if (pass > 100) 
{
26a6afb9 Jean-François Dagenais2011-05-26  334  
dev_dbg(&ds1wm_data->pdev->dev,
26a6afb9 Jean-François Dagenais2011-05-26  335  
"too many attempts (100), search aborted\n");
d3a8a9db David Fries   2014-01-15  336  break;
26a6afb9 Jean-François Dagenais2011-05-26  337  }
26a6afb9 Jean-François Dagenais2011-05-26  338  
b02f8bed NeilBrown 2012-05-18 @339  
mutex_lock(&master_dev->bus_mutex);
26a6afb9 Jean-François Dagenais2011-05-26  340  if 
(ds1wm_reset(ds1wm_data)) {
b02f8bed NeilBrown 2012-05-18  341  
mutex_unlock(&master_dev->bus_mutex);
26a6afb9 Jean-François Dagenais2011-05-26  342  
dev_dbg(&ds1wm_data->pdev->dev,
26a6afb9 Jean-François Dagenais2011-05-26  343  
"pass: %d reset error (or no slaves)\n", pass);
26a6afb9 Jean-François Dagenais2011-05-26  344  break;
26a6afb9 Jean-François Dagenais2011-05-26  345  }
26a6afb9 Jean-François Dagenais2011-05-26  346  
26a6afb9 Jean-François Dagenais2011-05-26  347  
dev_dbg(&ds1wm_data->pdev->dev,
26a6afb9 Jean-François Dagenais2011-05-26  348  "pass: 
%d r : %0#18llx writing SEARCH_ROM\n", pass, r);
26a6afb9 Jean-François Dagenais2011-05-26  349  
ds1wm_write(ds1wm_data, search_type);
26a6afb9 Jean-François Dagenais2011-05-26  350  
dev_dbg(&ds1wm_data->pdev->dev,
26a6afb9 Jean-François Dagenais2011-05-26  351  "pass: 
%d entering ASM\n", pass);
26a6afb9 Jean-François Dagenais2011-05-26  352  
ds1wm_write_register(ds1wm_data, DS1WM_CMD, DS1WM_CMD_SRA);
26a6afb9 Jean-François Dagenais2011-05-26  353  
dev_dbg(&ds1wm_data->pdev->dev,
4907cb7b Anatol Pomozov2012-09-01  354  "pass: 
%d beginning nibble loop\n", pass);
26a6afb9 Jean-François Dagenais2011-05-26  355  
26a6afb9 Jean-François Dagenais2011-05-26  356  r_prime = 0;
26a6afb9 Jean-François Dagenais2011-05-26  357  d = 0;
26a6afb9 Jean-François Dagenais2011-05-26  358  /* we work one 
nibble at a time */
26a6afb9 Jean-François Dagenais2011-05-26  359  /* each nibble 
is interleaved to form a byte */
26a6afb9 Jean-François Dagenais2011-05-26  360  for (i = 0; i < 
16; i++) {
26a6afb9 Jean-François Dagenais2011-05-26  361  
26a6afb9 Jean-François Dagenais2011-05-26  362  
unsigned char resp, _r, _r_prime, _d;
26a6afb9 Jean-François Dagenais2011-05-26  363  
26a6afb9 Jean-François Dagenais2011-05-26  364  _r = (r 
>> (4*i)) & 0xf;
26a6afb9 Jean-François Dagenais2011-05-26  365  _r = 
((_r & 0x1) << 1) |
26a6afb9 Jean-François Dagenais2011-05-26  366  ((_r & 
0x2) << 2) |
26a6afb9 Jean-François Dagenais2011-05-26  367  ((_r & 
0x4) << 3) |
26a6afb9 Jean-François Dagenais2011-05-26  368  ((_r & 
0x8) << 4);
26a6afb9 Jean-François Dagenais2011-05-26  369  
26a6afb9 Jean-François Dagenais2011-05-26  370  /* 
writes _r, then reads back: */
26a6afb9 Jean-François Dagenais2011-05-26  371  resp = 
ds1wm_read(ds1wm_data, _r);
26a6afb9 Jean-François Dagenais2011-05-26  372  
26a6afb9 Jean-François Dagenais2011-05-26  373  if 
(ds1wm_data->read_error) {
26a6afb9 Jean-François Dagenais2011-05-26  374  
dev_err(&ds1wm_data->pdev->dev,
26a6afb9 Jean-François Dagenais2011-05-26  375  
"pass: %d nibble: %d read error\n", pass, i);
26a6afb9 Jean-François Dagenais2011-05-26  376  
break;
26a6afb9 Jean-François Dagenais2011-05-26  377  }
26a6afb9 Jean-François Dagenais2011-05-26  378  
26a6afb9 Jean-François Dagenais2011-05-26  379  
_r_prime = ((resp &

[kbuild] [char-misc:char-misc-next 5/29] drivers/misc/mei/hw-txe.c:217:3-9: preceding lock on line 221

2014-02-07 Thread kbuild test robot
TO: Tomas Winkler 
CC: "Greg Kroah-Hartman" 


Hi Tomas,

FYI, there are coccinelle warnings in

tree:   git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc.git 
char-misc-next
head:   d3a8a9dbb903c73a7ec2deae4c9b7d74b6834f4c
commit: 92ab513072e73d74fee78062c9935f119339e4de [5/29] mei: txe: add Kbuild 
for TXE device
:: branch date: 5 hours ago
:: commit date: 5 hours ago

>> drivers/misc/mei/hw-txe.c:217:3-9: preceding lock on line 221

git remote add char-misc 
git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc.git
git remote update char-misc
git checkout 92ab513072e73d74fee78062c9935f119339e4de
vim +217 drivers/misc/mei/hw-txe.c

32e2b59f Tomas Winkler 2014-01-16  211  
32e2b59f Tomas Winkler 2014-01-16  212  do {
32e2b59f Tomas Winkler 2014-01-16  213  hw->aliveness = 
mei_txe_aliveness_get(dev);
32e2b59f Tomas Winkler 2014-01-16  214  if (hw->aliveness == 
expected) {
32e2b59f Tomas Winkler 2014-01-16  215  
dev_dbg(&dev->pdev->dev,
32e2b59f Tomas Winkler 2014-01-16  216  
"aliveness settled after %d msecs\n", t);
32e2b59f Tomas Winkler 2014-01-16 @217  return t;
32e2b59f Tomas Winkler 2014-01-16  218  }
32e2b59f Tomas Winkler 2014-01-16  219  
mutex_unlock(&dev->device_lock);
32e2b59f Tomas Winkler 2014-01-16  220  msleep(MSEC_PER_SEC / 
5);
32e2b59f Tomas Winkler 2014-01-16 @221  
mutex_lock(&dev->device_lock);
32e2b59f Tomas Winkler 2014-01-16  222  t += MSEC_PER_SEC / 5;
32e2b59f Tomas Winkler 2014-01-16  223  } while (t < 
SEC_ALIVENESS_WAIT_TIMEOUT);
32e2b59f Tomas Winkler 2014-01-16  224  

:: The code at line 217 was first introduced by commit
:: 32e2b59fca2c422f6911c700cd4cf0809f7b2019 mei: txe: add hw-txe.c

:: TO: Tomas Winkler 
:: CC: Greg Kroah-Hartman 

---
0-DAY kernel build testing backend  Open Source Technology Center
http://lists.01.org/mailman/listinfo/kbuild Intel Corporation
___
kbuild mailing list
kbuild@lists.01.org
https://lists.01.org/mailman/listinfo/kbuild


kbuild@lists.01.org

2014-02-07 Thread kbuild test robot
TO: David Fries 
CC: "Greg Kroah-Hartman" 


Hi David,

FYI, there are new smatch warnings show up in

tree:   git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc.git 
char-misc-next
head:   d3a8a9dbb903c73a7ec2deae4c9b7d74b6834f4c
commit: d3a8a9dbb903c73a7ec2deae4c9b7d74b6834f4c [29/29] w1: hold bus_mutex in 
netlink and search
:: branch date: 33 minutes ago
:: commit date: 33 minutes ago

drivers/w1/masters/ds1wm.c:339 ds1wm_search() error: double lock 
'mutex:&master_dev->bus_mutex'
drivers/w1/masters/ds1wm.c:443 ds1wm_search() error: double unlock 
'mutex:&master_dev->bus_mutex'

git remote add char-misc 
git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc.git
git remote update char-misc
git checkout d3a8a9dbb903c73a7ec2deae4c9b7d74b6834f4c
vim +339 drivers/w1/masters/ds1wm.c

26a6afb9 Jean-François Dagenais2011-05-26  333  if (pass > 100) 
{
26a6afb9 Jean-François Dagenais2011-05-26  334  
dev_dbg(&ds1wm_data->pdev->dev,
26a6afb9 Jean-François Dagenais2011-05-26  335  
"too many attempts (100), search aborted\n");
d3a8a9db David Fries   2014-01-15  336  break;
26a6afb9 Jean-François Dagenais2011-05-26  337  }
26a6afb9 Jean-François Dagenais2011-05-26  338  
b02f8bed NeilBrown 2012-05-18 @339  
mutex_lock(&master_dev->bus_mutex);
26a6afb9 Jean-François Dagenais2011-05-26  340  if 
(ds1wm_reset(ds1wm_data)) {
b02f8bed NeilBrown 2012-05-18  341  
mutex_unlock(&master_dev->bus_mutex);
26a6afb9 Jean-François Dagenais2011-05-26  342  
dev_dbg(&ds1wm_data->pdev->dev,
26a6afb9 Jean-François Dagenais2011-05-26  343  
"pass: %d reset error (or no slaves)\n", pass);
26a6afb9 Jean-François Dagenais2011-05-26  344  break;
26a6afb9 Jean-François Dagenais2011-05-26  345  }
26a6afb9 Jean-François Dagenais2011-05-26  346  
26a6afb9 Jean-François Dagenais2011-05-26  347  
dev_dbg(&ds1wm_data->pdev->dev,
26a6afb9 Jean-François Dagenais2011-05-26  348  "pass: 
%d r : %0#18llx writing SEARCH_ROM\n", pass, r);
26a6afb9 Jean-François Dagenais2011-05-26  349  
ds1wm_write(ds1wm_data, search_type);
26a6afb9 Jean-François Dagenais2011-05-26  350  
dev_dbg(&ds1wm_data->pdev->dev,
26a6afb9 Jean-François Dagenais2011-05-26  351  "pass: 
%d entering ASM\n", pass);
26a6afb9 Jean-François Dagenais2011-05-26  352  
ds1wm_write_register(ds1wm_data, DS1WM_CMD, DS1WM_CMD_SRA);
26a6afb9 Jean-François Dagenais2011-05-26  353  
dev_dbg(&ds1wm_data->pdev->dev,
4907cb7b Anatol Pomozov2012-09-01  354  "pass: 
%d beginning nibble loop\n", pass);
26a6afb9 Jean-François Dagenais2011-05-26  355  
26a6afb9 Jean-François Dagenais2011-05-26  356  r_prime = 0;
26a6afb9 Jean-François Dagenais2011-05-26  357  d = 0;
26a6afb9 Jean-François Dagenais2011-05-26  358  /* we work one 
nibble at a time */
26a6afb9 Jean-François Dagenais2011-05-26  359  /* each nibble 
is interleaved to form a byte */
26a6afb9 Jean-François Dagenais2011-05-26  360  for (i = 0; i < 
16; i++) {
26a6afb9 Jean-François Dagenais2011-05-26  361  
26a6afb9 Jean-François Dagenais2011-05-26  362  
unsigned char resp, _r, _r_prime, _d;
26a6afb9 Jean-François Dagenais2011-05-26  363  
26a6afb9 Jean-François Dagenais2011-05-26  364  _r = (r 
>> (4*i)) & 0xf;
26a6afb9 Jean-François Dagenais2011-05-26  365  _r = 
((_r & 0x1) << 1) |
26a6afb9 Jean-François Dagenais2011-05-26  366  ((_r & 
0x2) << 2) |
26a6afb9 Jean-François Dagenais2011-05-26  367  ((_r & 
0x4) << 3) |
26a6afb9 Jean-François Dagenais2011-05-26  368  ((_r & 
0x8) << 4);
26a6afb9 Jean-François Dagenais2011-05-26  369  
26a6afb9 Jean-François Dagenais2011-05-26  370  /* 
writes _r, then reads back: */
26a6afb9 Jean-François Dagenais2011-05-26  371  resp = 
ds1wm_read(ds1wm_data, _r);
26a6afb9 Jean-François Dagenais2011-05-26  372  
26a6afb9 Jean-François Dagenais2011-05-26  373  if 
(ds1wm_data->read_error) {
26a6afb9 Jean-François Dagenais2011-05-26  374  
dev_err(&ds1wm_data->pdev->dev,
26a6afb9 Jean-François Dagenais2011-05-26  375  
"pass: %d nibble: %d read error\n", pass, i);
26a6afb9 Jean-François Dagenais2011-05-26  376  
break;
26a6afb9 Jean-François Dagenais2011-05-26  377  }
26a6afb9 Jean-François Dagenai

[kbuild] [userns:userns-always-map-user-v150 61/71] ipc/namespace.c:88:61: sparse: context imbalance in 'free_ipcs' - different lock contexts for basic block

2014-02-07 Thread kbuild test robot
TO: "Eric W. Biederman" 


Hi Eric,

FYI, there are new sparse warnings show up in

tree:   
git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace.git 
userns-always-map-user-v150
head:   2f7cf80cf427eab2cc66f127f8ff0b69f803c4c1
commit: 75edf288ca26d98afa45e09e211a5dde0cab4c83 [61/71] namespaces: Use 
task_lock and not rcu to protect nsproxy
reproduce: make C=1 CF=-D__CHECK_ENDIAN__
:: branch date: 3 days ago
:: commit date: 4 days ago

>> ipc/namespace.c:88:61: sparse: context imbalance in 'free_ipcs' - different 
>> lock contexts for basic block
--
   fs/namespace.c:1051:23: sparse: incorrect type in initializer (different 
address spaces)
   fs/namespace.c:1051:23:expected char *old
   fs/namespace.c:1051:23:got char [noderef] *s_options
>> include/linux/rcupdate.h:322:30: sparse: context imbalance in 
>> 'legitimize_mnt' - unexpected unlock

git remote add userns 
git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace.git
git remote update userns
git checkout 75edf288ca26d98afa45e09e211a5dde0cab4c83
vim +/free_ipcs +88 ipc/namespace.c

01b8b07a Pierre Peiffer  2008-02-08  72   * @ids:  the table of ipcs to free
01b8b07a Pierre Peiffer  2008-02-08  73   * @free: the function called to free 
each individual ipc
01b8b07a Pierre Peiffer  2008-02-08  74   *
01b8b07a Pierre Peiffer  2008-02-08  75   * Called for each kind of ipc when an 
ipc_namespace exits.
01b8b07a Pierre Peiffer  2008-02-08  76   */
01b8b07a Pierre Peiffer  2008-02-08  77  void free_ipcs(struct ipc_namespace 
*ns, struct ipc_ids *ids,
01b8b07a Pierre Peiffer  2008-02-08  78void (*free)(struct 
ipc_namespace *, struct kern_ipc_perm *))
01b8b07a Pierre Peiffer  2008-02-08  79  {
01b8b07a Pierre Peiffer  2008-02-08  80 struct kern_ipc_perm *perm;
01b8b07a Pierre Peiffer  2008-02-08  81 int next_id;
01b8b07a Pierre Peiffer  2008-02-08  82 int total, in_use;
01b8b07a Pierre Peiffer  2008-02-08  83  
d9a605e4 Davidlohr Bueso 2013-09-11  84 down_write(&ids->rwsem);
01b8b07a Pierre Peiffer  2008-02-08  85  
01b8b07a Pierre Peiffer  2008-02-08  86 in_use = ids->in_use;
01b8b07a Pierre Peiffer  2008-02-08  87  
01b8b07a Pierre Peiffer  2008-02-08 @88 for (total = 0, next_id = 0; 
total < in_use; next_id++) {
01b8b07a Pierre Peiffer  2008-02-08  89 perm = 
idr_find(&ids->ipcs_idr, next_id);
01b8b07a Pierre Peiffer  2008-02-08  90 if (perm == NULL)
01b8b07a Pierre Peiffer  2008-02-08  91 continue;
32a27500 Davidlohr Bueso 2013-09-11  92 rcu_read_lock();
32a27500 Davidlohr Bueso 2013-09-11  93 ipc_lock_object(perm);
01b8b07a Pierre Peiffer  2008-02-08  94 free(ns, perm);
01b8b07a Pierre Peiffer  2008-02-08  95 total++;
01b8b07a Pierre Peiffer  2008-02-08  96 }

:: The code at line 88 was first introduced by commit
:: 01b8b07a5d77d22e609267dcae74d15e3e9c5f13 IPC: consolidate sem_exit_ns(), 
msg_exit_ns() and shm_exit_ns()

:: TO: Pierre Peiffer 
:: CC: Linus Torvalds 

---
0-DAY kernel build testing backend  Open Source Technology Center
http://lists.01.org/mailman/listinfo/kbuild Intel Corporation
___
kbuild mailing list
kbuild@lists.01.org
https://lists.01.org/mailman/listinfo/kbuild


[kbuild] [drm-gma500:blitter_hacking 10/10] drivers/gpu/drm/gma500/blitter.c:97:2-8: preceding lock on line 78

2014-02-07 Thread Dan Carpenter
Hi Patrik,

FYI, there are coccinelle warnings in

tree:   git://github.com/patjak/drm-gma500 blitter_hacking
head:   c0f1cbb1b1991f5dbb18be5f4c8d04d5b0addb79
commit: c0f1cbb1b1991f5dbb18be5f4c8d04d5b0addb79 [10/10] drm/gma500: Add 
blitter submit ioctl

>> drivers/gpu/drm/gma500/blitter.c:97:2-8: preceding lock on line 78

git remote add drm-gma500 git://github.com/patjak/drm-gma500
git remote update drm-gma500
git checkout c0f1cbb1b1991f5dbb18be5f4c8d04d5b0addb79
vim +97 drivers/gpu/drm/gma500/blitter.c

c0f1cbb1 Patrik Jakobsson 2014-02-07   72  {
c0f1cbb1 Patrik Jakobsson 2014-02-07   73   int ret = 0;
c0f1cbb1 Patrik Jakobsson 2014-02-07   74   int i;
c0f1cbb1 Patrik Jakobsson 2014-02-07   75   unsigned submit_size;
c0f1cbb1 Patrik Jakobsson 2014-02-07   76   unsigned long flags;
c0f1cbb1 Patrik Jakobsson 2014-02-07   77  
c0f1cbb1 Patrik Jakobsson 2014-02-07  @78   
spin_lock_irqsave(&dev_priv->lock_2d, flags);
c0f1cbb1 Patrik Jakobsson 2014-02-07   79  
c0f1cbb1 Patrik Jakobsson 2014-02-07   80   while (size > 0) {
c0f1cbb1 Patrik Jakobsson 2014-02-07   81   submit_size = (size < 
0x60) ? size : 0x60;
c0f1cbb1 Patrik Jakobsson 2014-02-07   82   size -= submit_size;
c0f1cbb1 Patrik Jakobsson 2014-02-07   83   ret = 
gma_blt_wait_available(dev_priv, submit_size);
c0f1cbb1 Patrik Jakobsson 2014-02-07   84   submit_size <<= 2;
c0f1cbb1 Patrik Jakobsson 2014-02-07   85  
c0f1cbb1 Patrik Jakobsson 2014-02-07   86   for (i = 0; i < 
submit_size; i += 4) {
c0f1cbb1 Patrik Jakobsson 2014-02-07   87   
PSB_WSGX32(*cmdbuf++, PSB_SGX_2D_SLAVE_PORT + i);
c0f1cbb1 Patrik Jakobsson 2014-02-07   88   }
c0f1cbb1 Patrik Jakobsson 2014-02-07   89  
c0f1cbb1 Patrik Jakobsson 2014-02-07   90   
(void)PSB_RSGX32(PSB_SGX_2D_SLAVE_PORT + i - 4);
c0f1cbb1 Patrik Jakobsson 2014-02-07   91   }
c0f1cbb1 Patrik Jakobsson 2014-02-07   92  
c0f1cbb1 Patrik Jakobsson 2014-02-07   93   /* We currently sync our blits 
here */
c0f1cbb1 Patrik Jakobsson 2014-02-07   94   ret = 
gma_blt_wait_idle(dev_priv);
c0f1cbb1 Patrik Jakobsson 2014-02-07   95   if (ret) {
c0f1cbb1 Patrik Jakobsson 2014-02-07   96   
DRM_ERROR_DRIVER("Blitter hang!");
c0f1cbb1 Patrik Jakobsson 2014-02-07  @97   return ret;
c0f1cbb1 Patrik Jakobsson 2014-02-07   98   }
c0f1cbb1 Patrik Jakobsson 2014-02-07   99  
c0f1cbb1 Patrik Jakobsson 2014-02-07  100   
spin_unlock_irqrestore(&dev_priv->lock_2d, flags);

---
0-DAY kernel build testing backend  Open Source Technology Center
http://lists.01.org/mailman/listinfo/kbuild Intel Corporation
___
kbuild mailing list
kbuild@lists.01.org
https://lists.01.org/mailman/listinfo/kbuild
___
kbuild mailing list
kbuild@lists.01.org
https://lists.01.org/mailman/listinfo/kbuild


[kbuild] [drm-gma500:blitter_hacking 10/10] drivers/gpu/drm/gma500/blitter.c:102 gma_blt_send() warn: inconsistent returns spin_lock:&dev_priv->lock_2d: locked (97 [(-16)]) unlocked (102 [0])

2014-02-07 Thread kbuild test robot
TO: Patrik Jakobsson 


Hi Patrik,

FYI, there are new smatch warnings show up in

tree:   git://github.com/patjak/drm-gma500 blitter_hacking
head:   c0f1cbb1b1991f5dbb18be5f4c8d04d5b0addb79
commit: c0f1cbb1b1991f5dbb18be5f4c8d04d5b0addb79 [10/10] drm/gma500: Add 
blitter submit ioctl
:: branch date: 55 minutes ago
:: commit date: 55 minutes ago

drivers/gpu/drm/gma500/blitter.c:102 gma_blt_send() warn: inconsistent returns 
spin_lock:&dev_priv->lock_2d: locked (97 [(-16)]) unlocked (102 [0])
drivers/gpu/drm/gma500/blitter.c:102 gma_blt_send() warn: inconsistent returns 
irqsave:flags: locked (97 [(-16)]) unlocked (102 [0])

git remote add drm-gma500 git://github.com/patjak/drm-gma500
git remote update drm-gma500
git checkout c0f1cbb1b1991f5dbb18be5f4c8d04d5b0addb79
vim +102 drivers/gpu/drm/gma500/blitter.c

c0f1cbb1 Patrik Jakobsson 2014-02-07   86   for (i = 0; i < 
submit_size; i += 4) {
c0f1cbb1 Patrik Jakobsson 2014-02-07   87   
PSB_WSGX32(*cmdbuf++, PSB_SGX_2D_SLAVE_PORT + i);
c0f1cbb1 Patrik Jakobsson 2014-02-07   88   }
c0f1cbb1 Patrik Jakobsson 2014-02-07   89  
c0f1cbb1 Patrik Jakobsson 2014-02-07   90   
(void)PSB_RSGX32(PSB_SGX_2D_SLAVE_PORT + i - 4);
c0f1cbb1 Patrik Jakobsson 2014-02-07   91   }
c0f1cbb1 Patrik Jakobsson 2014-02-07   92  
c0f1cbb1 Patrik Jakobsson 2014-02-07   93   /* We currently sync our blits 
here */
c0f1cbb1 Patrik Jakobsson 2014-02-07   94   ret = 
gma_blt_wait_idle(dev_priv);
c0f1cbb1 Patrik Jakobsson 2014-02-07   95   if (ret) {
c0f1cbb1 Patrik Jakobsson 2014-02-07   96   
DRM_ERROR_DRIVER("Blitter hang!");
c0f1cbb1 Patrik Jakobsson 2014-02-07   97   return ret;
c0f1cbb1 Patrik Jakobsson 2014-02-07   98   }
c0f1cbb1 Patrik Jakobsson 2014-02-07   99  
c0f1cbb1 Patrik Jakobsson 2014-02-07  100   
spin_unlock_irqrestore(&dev_priv->lock_2d, flags);
c0f1cbb1 Patrik Jakobsson 2014-02-07  101  
c0f1cbb1 Patrik Jakobsson 2014-02-07 @102   return ret;
c0f1cbb1 Patrik Jakobsson 2014-02-07  103  }
c0f1cbb1 Patrik Jakobsson 2014-02-07  104  
c0f1cbb1 Patrik Jakobsson 2014-02-07  105  static inline int 
gma_blt_reloc_surf(struct drm_file *file,
c0f1cbb1 Patrik Jakobsson 2014-02-07  106
struct drm_device *dev, u32 *cmdbuf,
c0f1cbb1 Patrik Jakobsson 2014-02-07  107
u32 pos, u32 size,
c0f1cbb1 Patrik Jakobsson 2014-02-07  108
struct drm_gem_object **obj,
c0f1cbb1 Patrik Jakobsson 2014-02-07  109
u32 *gpu_addr)
c0f1cbb1 Patrik Jakobsson 2014-02-07  110  {

---
0-DAY kernel build testing backend  Open Source Technology Center
http://lists.01.org/mailman/listinfo/kbuild Intel Corporation
___
kbuild mailing list
kbuild@lists.01.org
https://lists.01.org/mailman/listinfo/kbuild


[kbuild] [drm-gma500:blitter_hacking 10/10] drivers/gpu/drm/gma500/blitter.c:97:2-8: preceding lock on line 78

2014-02-07 Thread kbuild test robot
TO: Patrik Jakobsson 


Hi Patrik,

FYI, there are coccinelle warnings in

tree:   git://github.com/patjak/drm-gma500 blitter_hacking
head:   c0f1cbb1b1991f5dbb18be5f4c8d04d5b0addb79
commit: c0f1cbb1b1991f5dbb18be5f4c8d04d5b0addb79 [10/10] drm/gma500: Add 
blitter submit ioctl
:: branch date: 52 minutes ago
:: commit date: 52 minutes ago

>> drivers/gpu/drm/gma500/blitter.c:97:2-8: preceding lock on line 78

git remote add drm-gma500 git://github.com/patjak/drm-gma500
git remote update drm-gma500
git checkout c0f1cbb1b1991f5dbb18be5f4c8d04d5b0addb79
vim +97 drivers/gpu/drm/gma500/blitter.c

c0f1cbb1 Patrik Jakobsson 2014-02-07   72  {
c0f1cbb1 Patrik Jakobsson 2014-02-07   73   int ret = 0;
c0f1cbb1 Patrik Jakobsson 2014-02-07   74   int i;
c0f1cbb1 Patrik Jakobsson 2014-02-07   75   unsigned submit_size;
c0f1cbb1 Patrik Jakobsson 2014-02-07   76   unsigned long flags;
c0f1cbb1 Patrik Jakobsson 2014-02-07   77  
c0f1cbb1 Patrik Jakobsson 2014-02-07  @78   
spin_lock_irqsave(&dev_priv->lock_2d, flags);
c0f1cbb1 Patrik Jakobsson 2014-02-07   79  
c0f1cbb1 Patrik Jakobsson 2014-02-07   80   while (size > 0) {
c0f1cbb1 Patrik Jakobsson 2014-02-07   81   submit_size = (size < 
0x60) ? size : 0x60;
c0f1cbb1 Patrik Jakobsson 2014-02-07   82   size -= submit_size;
c0f1cbb1 Patrik Jakobsson 2014-02-07   83   ret = 
gma_blt_wait_available(dev_priv, submit_size);
c0f1cbb1 Patrik Jakobsson 2014-02-07   84   submit_size <<= 2;
c0f1cbb1 Patrik Jakobsson 2014-02-07   85  
c0f1cbb1 Patrik Jakobsson 2014-02-07   86   for (i = 0; i < 
submit_size; i += 4) {
c0f1cbb1 Patrik Jakobsson 2014-02-07   87   
PSB_WSGX32(*cmdbuf++, PSB_SGX_2D_SLAVE_PORT + i);
c0f1cbb1 Patrik Jakobsson 2014-02-07   88   }
c0f1cbb1 Patrik Jakobsson 2014-02-07   89  
c0f1cbb1 Patrik Jakobsson 2014-02-07   90   
(void)PSB_RSGX32(PSB_SGX_2D_SLAVE_PORT + i - 4);
c0f1cbb1 Patrik Jakobsson 2014-02-07   91   }
c0f1cbb1 Patrik Jakobsson 2014-02-07   92  
c0f1cbb1 Patrik Jakobsson 2014-02-07   93   /* We currently sync our blits 
here */
c0f1cbb1 Patrik Jakobsson 2014-02-07   94   ret = 
gma_blt_wait_idle(dev_priv);
c0f1cbb1 Patrik Jakobsson 2014-02-07   95   if (ret) {
c0f1cbb1 Patrik Jakobsson 2014-02-07   96   
DRM_ERROR_DRIVER("Blitter hang!");
c0f1cbb1 Patrik Jakobsson 2014-02-07  @97   return ret;
c0f1cbb1 Patrik Jakobsson 2014-02-07   98   }
c0f1cbb1 Patrik Jakobsson 2014-02-07   99  
c0f1cbb1 Patrik Jakobsson 2014-02-07  100   
spin_unlock_irqrestore(&dev_priv->lock_2d, flags);

---
0-DAY kernel build testing backend  Open Source Technology Center
http://lists.01.org/mailman/listinfo/kbuild Intel Corporation
___
kbuild mailing list
kbuild@lists.01.org
https://lists.01.org/mailman/listinfo/kbuild


[kbuild] drivers/target/target_core_file.c:696:8-23: ERROR: reference preceded by free on line 649

2014-02-07 Thread Fengguang Wu
Hi Nicholas,

The cited bug is not a bug, due to the value of ret.  But I wonder if
it is really necessary to use both ret and rc?

julia

tree:   git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   9343224bfd4be6a02e6ae0c0d66426c955c7d76e
commit: 42201b557471f2fef2e9e028b50a773d99ffc401 target/file: Add DIF 
protection support to fd_execute_rw
date:   3 weeks ago

>> drivers/target/target_core_file.c:696:8-23: ERROR: reference preceded by 
>> free on line 649

vim +696 drivers/target/target_core_file.c

42201b55 Nicholas Bellinger2014-01-18  643  
 0, fd_prot.prot_sg, 0);
42201b55 Nicholas Bellinger2014-01-18  644  if (rc) 
{
42201b55 Nicholas Bellinger2014-01-18  645  
kfree(fd_prot.prot_sg);
42201b55 Nicholas Bellinger2014-01-18  646  
vfree(fd_prot.prot_buf);
42201b55 Nicholas Bellinger2014-01-18  647  
return rc;
42201b55 Nicholas Bellinger2014-01-18  648  }
42201b55 Nicholas Bellinger2014-01-18 @649  
kfree(fd_prot.prot_sg);
42201b55 Nicholas Bellinger2014-01-18  650  
vfree(fd_prot.prot_buf);
42201b55 Nicholas Bellinger2014-01-18  651  }
c66ac9db Nicholas Bellinger2010-12-17  652  } else {
42201b55 Nicholas Bellinger2014-01-18  653  
memset(&fd_prot, 0, sizeof(struct fd_prot));
42201b55 Nicholas Bellinger2014-01-18  654  
42201b55 Nicholas Bellinger2014-01-18  655  if 
(cmd->prot_type) {
42201b55 Nicholas Bellinger2014-01-18  656  u32 
sectors = cmd->data_length / dev->dev_attrib.block_size;
42201b55 Nicholas Bellinger2014-01-18  657  
42201b55 Nicholas Bellinger2014-01-18  658  ret = 
fd_do_prot_rw(cmd, &fd_prot, false);
42201b55 Nicholas Bellinger2014-01-18  659  if (ret 
< 0)
42201b55 Nicholas Bellinger2014-01-18  660  
return TCM_LOGICAL_UNIT_COMMUNICATION_FAILURE;
42201b55 Nicholas Bellinger2014-01-18  661  
42201b55 Nicholas Bellinger2014-01-18  662  rc = 
sbc_dif_verify_write(cmd, cmd->t_task_lba, sectors,
42201b55 Nicholas Bellinger2014-01-18  663  
  0, fd_prot.prot_sg, 0);
42201b55 Nicholas Bellinger2014-01-18  664  if (rc) 
{
42201b55 Nicholas Bellinger2014-01-18  665  
kfree(fd_prot.prot_sg);
42201b55 Nicholas Bellinger2014-01-18  666  
vfree(fd_prot.prot_buf);
42201b55 Nicholas Bellinger2014-01-18  667  
return rc;
42201b55 Nicholas Bellinger2014-01-18  668  }
42201b55 Nicholas Bellinger2014-01-18  669  }
42201b55 Nicholas Bellinger2014-01-18  670  
778229af Sebastian Andrzej Siewior 2012-12-05  671  ret = 
fd_do_rw(cmd, sgl, sgl_nents, 1);
a4dff304 Nicholas Bellinger2012-05-30  672  /*
125d0119 Hannes Reinecke   2013-11-19  673   * Perform 
implicit vfs_fsync_range() for fd_do_writev() ops
a4dff304 Nicholas Bellinger2012-05-30  674   * for SCSI 
WRITEs with Forced Unit Access (FUA) set.
a4dff304 Nicholas Bellinger2012-05-30  675   * Allow this 
to happen independent of WCE=0 setting.
a4dff304 Nicholas Bellinger2012-05-30  676   */
c66ac9db Nicholas Bellinger2010-12-17  677  if (ret > 0 &&
0fd97ccf Christoph Hellwig 2012-10-08  678  
dev->dev_attrib.emulate_fua_write > 0 &&
2d3a4b51 Christoph Hellwig 2011-11-14  679  
(cmd->se_cmd_flags & SCF_FUA)) {
0fd97ccf Christoph Hellwig 2012-10-08  680  struct 
fd_dev *fd_dev = FD_DEV(dev);
a4dff304 Nicholas Bellinger2012-05-30  681  loff_t 
start = cmd->t_task_lba *
0fd97ccf Christoph Hellwig 2012-10-08  682  
dev->dev_attrib.block_size;
a4dff304 Nicholas Bellinger2012-05-30  683  loff_t 
end = start + cmd->data_length;
c66ac9db Nicholas Bellinger2010-12-17  684  
a4dff304 Nicholas Bellinger2012-05-30  685  
vfs_fsync_range(fd_dev->fd_file, start, end, 1);
a4dff304 Nicholas Bellinger2012-05-30  686  }
42201b55 Nicholas Bellinger2014-01-18  687  
42201b55 Nicholas Bellinger2014-01-18  688  if (ret > 0 && 
cmd->prot_type) {
42201b55 Nicholas Bellinger2014-01-18  689  ret = 
fd_do_prot_rw(cmd, &fd_prot, true);
42201b55 Nicholas Bellinger2014-01-18  690