小编Cod*_*han的帖子

什么"静态int函数(...)__ acquires(...)__releases(...){"是什么意思?

我最近在Linux内核中得到了一段代码:

static int
fb_mmap(struct file *file, struct vm_area_struct * vma)
__acquires(&info->lock)
__releases(&info->lock)
{
...
}
Run Code Online (Sandbox Code Playgroud)

什么困惑我的是两个__funtions以下static int fb_mmap()权利之前"{",

a).这两个__funtions的目的是什么?

b).为什么在那个位置?

c).为什么他们有前缀"__"

d).还有其他类似的例子吗?

c linux linux-device-driver linux-kernel

4
推荐指数
1
解决办法
2227
查看次数

如何签出仅在“git ls-remote”中列出的分支?

我遇到了一种情况,无法切换到仅在 中列出的分支git ls-remote,详细信息如下:

我分叉了一个 github repoA 作为 repoB,创建了自己的分支并将其推送到 ComputerA 中的 repoB,在 ComputerB 中,我将分叉的 repo 克隆到本地磁盘,添加了远程上游,并尝试切换到我创建的分支,但失败了,我不过可以成功切换到github网页中的同一个分支。

以下结果来自 ComputerB 中的 repoB。

ls-远程分支:

$ git ls-remote --heads
2da2080ea7201fc7928e947dc3214dd89d86c4ba        refs/heads/enable-vim-better-whitespace
433cedd84bba8bcdf3584734906b2c0fd3b6dc3a        refs/heads/fix-lsp-cache-dir
ff65e1cd687d0c144e98b09e4d7a164f8b6bfd3e        refs/heads/gh-pages
17e53cf01badebc2abef7df375903da71bf884d8        refs/heads/master
7b8f8a2dccb0715ff1c1c411abf40b2ff6cec30b        refs/heads/vim-plug
26b8a0ba594af1068997c70c4ef0f503571557b3        refs/heads/vundle
Run Code Online (Sandbox Code Playgroud)

列出分支:

$ git branch
  abc
* master

$ git branch -r
  origin/HEAD -> origin/master
  origin/master
  upstream/gh-pages
  upstream/master
  upstream/vim-plug
  upstream/vundle

$ git branch -a
  abc
* master
  remotes/origin/HEAD -> origin/master
  remotes/origin/master
  remotes/upstream/gh-pages
  remotes/upstream/master
  remotes/upstream/vim-plug
  remotes/upstream/vundle
Run Code Online (Sandbox Code Playgroud)

该分支abc是我还没有推送的本地分支。

我尝试了几种方法来切换到分支,fix-lsp-cache-dir例如

$ git …
Run Code Online (Sandbox Code Playgroud)

git github

4
推荐指数
1
解决办法
1945
查看次数

标签 统计

c ×1

git ×1

github ×1

linux ×1

linux-device-driver ×1

linux-kernel ×1