From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751752AbbCTN3T (ORCPT ); Fri, 20 Mar 2015 09:29:19 -0400 Received: from mx1.redhat.com ([209.132.183.28]:52036 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750764AbbCTN3S (ORCPT ); Fri, 20 Mar 2015 09:29:18 -0400 Date: Fri, 20 Mar 2015 14:29:14 +0100 From: Karel Zak To: Alexander Viro , Miklos Szeredi Cc: linux-kernel@vger.kernel.org Subject: d_path() and overlay fs Message-ID: <20150320132914.GA1749@ws.net.home> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.5.23.1-rc1 (2014-03-12) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi, kernel-4.0.0-0.rc4.git1.3.fc23 (I have nothing more recent right now, sorry it the problem is already fixed). It seems like d_path() kernel function returns nonsenses for overlay fs. Example: # mount -t overlay overlay -olowerdir=/mnt/low,upperdir=/mnt/up/data,workdir=/mnt/up/work /mnt/merged # dd if=/dev/zero of=/mnt/merged/image count=1 bs=1MiB # losetup -f /mnt/merged/image # cat /sys/block/loop0/loop/backing_file /image ...should be /mnt/merged/image. drivers/block/loop.c: loop_attr_backing_file_show() uses d_path() It seems like serious problem because kernel uses d_path() (and friends) on many places to generate path strings for userspace in /proc and /sys and people already use overlay fs in containers. Another example: # cat /proc/swaps Filename Type Size Used Priority /dev/sda6 partition 8191996 258308 -1 /image file 1020 0 -2 Karel -- Karel Zak http://karelzak.blogspot.com