nacl: $(Q)echo "$(bold)$(WHAT) $@:$(normal)" $(Q)cd curvetun/ && source ./nacl_build.sh ~/nacl $(Q)source ~/.bashrc tarball.gz: ; $(call GIT_ARCHIVE,gzip,gz) tarball.bz2: ; $(call GIT_ARCHIVE,bzip2,bz2) tarball.xz: ; $(call GIT_ARCHIVE,xz,xz) tarball: tarball.gz tarball.bz2 tarball.xz tag: $(GIT_TAG) people: $(GIT_PEOPLE) log: $(GIT_LOG) announcement: $(Q)echo -e " *** BLURB HERE (general bits, optional) ***\n\n---\n" > .MAIL_MSG $(Q)echo -e "netsniff-ng $(VERSION_SHORT) ($(NAME)) has been released to the public.\n" >> .MAIL_MSG $(Q)echo -e "It can be fetched via Git:\n" >> .MAIL_MSG $(Q)echo -e " git clone git://github.com/netsniff-ng/netsniff-ng.git" >> .MAIL_MSG $(Q)echo -e " git checkout v$(VERSION_SHORT)\n" >> .MAIL_MSG $(Q)echo -e "Or via HTTP from one of our mirrors:\n" >> .MAIL_MSG $(Q)echo -e " http://pub.netsniff-ng.org/netsniff-ng/netsniff-ng-$(VERSION_SHORT).tar.gz" >> .MAIL_MSG $(Q)echo -e " http://mirror.distanz.ch/netsniff-ng/netsniff-ng-$(VERSION_SHORT).tar.gz" >> .MAIL_MSG $(Q)echo -e " http://github.com/netsniff-ng/netsniff-ng/archive/v$(VERSION_SHORT).tar.gz\n" >> .MAIL_MSG $(Q)echo -e "The release can be verified via Git (see README):\n" >> .MAIL_MSG $(Q)echo -e " git tag -v v$(VERSION_SHORT)\n" >> .MAIL_MSG $(Q)echo -e "Major high-level changes since the last release ($(shell $(GIT_LAST_TAG))) are:\n" >> .MAIL_MSG $(Q)echo -e " *** BLURB HERE (specific bits) ***\n" >> .MAIL_MSG $(Q)echo -e "Contributions since last release:\n" >> .MAIL_MSG $(GIT_PEOPLE) >> .MAIL_MSG $(Q)echo -e "\nGit changelog since last release:\n" >> .MAIL_MSG $(GIT_LOG) >> .MAIL_MSG sign: $(call GPG_SIGN,gz) $(call GPG_SIGN,bz2) $(call GPG_SIGN,xz) release: tag announcement tarball sign $(Q)echo "Released $(bold)$(VERSION_SHORT)$(normal)" FIND_SOURCE_FILES = ( git ls-files '*.[hcS]' 2>/dev/null || \ find . \( -name .git -type d -prune \) \ -o \( -name '*.[hcS]' -type f -print \) ) tags ctags: $(Q)$(call RM,tags) $(FIND_SOURCE_FILES) | xargs ctags -a cscope: $(Q)$(call RM,cscope*) $(FIND_SOURCE_FILES) | xargs cscope -b COV_URL = "https://scan.coverity.com/builds?project=netsniff-ng" # these need to be specified on the command line COV_EMAIL = COV_PASSWD = coverity: $(Q)test -n "$(COV_EMAIL)" || (echo "COV_EMAIL not set" && false) $(Q)test -n "$(COV_PASSWD)" || (echo "COV_PASSWD not set" && false) $(Q)$(MAKE) distclean $(Q)$(call RM,cov-int) $(Q)$(call MKDIR,cov-int) $(Q)./configure $(Q)cov-build --dir cov-int $(MAKE) $(Q)tar czvf netsniff-ng-coverity.tgz cov-int $(Q)echo "Uploading snapshot to Coverity scanner at $(COV_URL)" $(Q)curl --form project=netsniff-ng \ --form file=@netsniff-ng-coverity.tgz \ --form token=$(COV_PASSWD) \ --form email=$(COV_EMAIL) \ --form version=`$(GIT_VERSION)` \ --form description="netsniff-ng snapshot" $(COV_URL) help: $(Q)echo "$(bold)Available tools from the toolkit:$(normal)" $(Q)echo " :={$(TOOLS)}" $(Q)echo "$(bold)Targets for building the toolkit:$(normal)" $(Q)echo " all|toolkit - Build the whole toolkit" $(Q)echo " allbutcurvetun - Build all except curvetun" $(Q)echo " allbutmausezahn - Build all except mausezahn" $(Q)echo " - Build only one of the tools" $(Q)echo "$(bold)Targets for cleaning the toolkit's build files:$(normal)" $(Q)echo " clean - Remove all build files" $(Q)echo " _clean - Remove only one of the tool's files" $(Q)echo " distclean - Remove all build and build config files" $(Q)echo " mrproper - Remove all files not in source distribution" $(Q)echo "$(bold)Targets for installing the toolkit:$(normal)" $(Q)echo " install - Install the whole toolkit" $(Q)echo " _install - Install only one of the tools" $(Q)echo "$(bold)Targets for removing the toolkit:$(normal)" $(Q)echo " uninstall - Remove the whole toolkit from the system" $(Q)echo " _uninstall - Remove only one of the tools" $(Q)echo "$(bold)Hacking/development targets:$(normal)" $(Q)echo " tag - Generate Git tag of current version" $(Q)echo " tarball - Generate tarball of latest version" $(Q)echo " release - Generate a new release" $(Q)echo " tags - Generate sparse ctags" $(Q)echo " cscope - Generate cscope files" $(Q)echo "$(bold)Misc targets:$(normal)" $(Q)echo " nacl - Execute the build_nacl script" $(Q)echo " help - Show this help" $(Q)echo "$(bold)Available parameters:$(normal)" $(Q)echo " DEBUG=1 - Enable debugging" $(Q)echo " HARDENING=1 - Enable GCC hardening of executables" $(Q)echo " PREFIX=/path - Install path prefix" $(Q)echo " DESTDIR=/path - Alternative install destination path" $(Q)echo " CC=cgcc - Use sparse compiler wrapper" $(Q)echo " CFLAGS=\"-O2 -Wall ...\" - Overwrite CFLAGS for compilation" $(Q)echo " CPPFLAGS=\"-I ...\" - Additional CFLAGS for compilation" $(Q)echo " LDFLAGS=\"-L ...\" - Additional LDFLAGS for compilation" $(Q)echo " CCACHE=ccache - Use ccache for compilation" $(Q)echo " C=1 - Check all C source files with sparse" $(Q)echo " Q= - Show verbose garbage" ss='commit-subject'>cgroup: don't online subsystems before cgroup_name/path() are operational
While refactoring cgroup creation, a5bca2152036 ("cgroup: factor out cgroup_create() out of cgroup_mkdir()") incorrectly onlined subsystems before the new cgroup is associated with it kernfs_node. This is fine for cgroup proper but cgroup_name/path() depend on the associated kernfs_node and if a subsystem makes the new cgroup_subsys_state visible, which they're allowed to after onlining, it can lead to NULL dereference. The current code performs cgroup creation and subsystem onlining in cgroup_create() and cgroup_mkdir() makes the cgroup and subsystems visible afterwards. There's no reason to online the subsystems early and we can simply drop cgroup_apply_control_enable() call from cgroup_create() so that the subsystems are onlined and made visible at the same time. Signed-off-by: Tejun Heo <tj@kernel.org> Reported-by: Konstantin Khlebnikov <khlebnikov@yandex-team.ru> Fixes: a5bca2152036 ("cgroup: factor out cgroup_create() out of cgroup_mkdir()") Cc: stable@vger.kernel.org # v4.6+
Diffstat (limited to 'sound/usb')