/* * symlink.c * * Copyright (c) 1999 Al Smith * * Portions derived from work (c) 1995,1996 Christian Vogelgsang. */ #include #include #include #include "efs.h" static int efs_symlink_readpage(struct file *file, struct page *page) { char *link = page_address(page); struct buffer_head * bh; struct inode * inode = page->mapping->host; efs_block_t size = inode->i_size; int err; err = -ENAMETOOLONG; if (size > 2 * EFS_BLOCKSIZE) goto fail; /* read first 512 bytes of link target */ err = -EIO; bh = sb_bread(inode->i_sb, efs_bmap(inode, 0)); if (!bh) goto fail; memcpy(link, bh->b_data, (size > EFS_BLOCKSIZE) ? EFS_BLOCKSIZE : size); brelse(bh); if (size > EFS_BLOCKSIZE) { bh = sb_bread(inode->i_sb, efs_bmap(inode, 1)); if (!bh) goto fail; memcpy(link + EFS_BLOCKSIZE, bh->b_data, size - EFS_BLOCKSIZE); brelse(bh); } link[size] = '\0'; SetPageUptodate(page); unlock_page(page); return 0; fail: SetPageError(page); unlock_page(page); return err; } const struct address_space_operations efs_symlink_aops = { .readpage = efs_symlink_readpage }; nds-private-remove net-next plumbingsTobias Klauser
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIdo Schimmel <idosch@mellanox.com>2017-02-06 16:20:14 +0100
committerDavid S. Miller <davem@davemloft.net>2017-02-06 11:25:57 -0500
commita8eca326151ee1beac82a4fd86d9edad3a37aaed (patch)
tree78be26268b991ac647680cde9c968d924f912dbd
parent5c8802f14a0679e970e7b25f809a12c3ae1a873d (diff)
net: remove ndo_neigh_{construct, destroy} from stacked devices
In commit 18bfb924f000 ("net: introduce default neigh_construct/destroy ndo calls for L2 upper devices") we added these ndos to stacked devices such as team and bond, so that calls will be propagated to mlxsw. However, previous commit removed the reliance on these ndos and no new users of these ndos have appeared since above mentioned commit. We can therefore safely remove this dead code. Signed-off-by: Ido Schimmel <idosch@mellanox.com> Signed-off-by: Jiri Pirko <jiri@mellanox.com> Signed-off-by: David S. Miller <davem@davemloft.net>