ipc/util.c: sysvipc_find_ipc() should increase position index
[sfrench/cifs-2.6.git] / ipc / util.c
index 97638eb2d7cb1c9ed916f45130427a0a16a4b9f3..7acccfded7cb034c9aeada477af8e0bf61302520 100644 (file)
@@ -764,13 +764,13 @@ static struct kern_ipc_perm *sysvipc_find_ipc(struct ipc_ids *ids, loff_t pos,
                        total++;
        }
 
+       *new_pos = pos + 1;
        if (total >= ids->in_use)
                return NULL;
 
        for (; pos < ipc_mni; pos++) {
                ipc = idr_find(&ids->ipcs_idr, pos);
                if (ipc != NULL) {
-                       *new_pos = pos + 1;
                        rcu_read_lock();
                        ipc_lock_object(ipc);
                        return ipc;